CN115086438A - 任务处理方法、视频处理单元、部件及交通设备 - Google Patents

任务处理方法、视频处理单元、部件及交通设备 Download PDF

Info

Publication number
CN115086438A
CN115086438A CN202210995902.8A CN202210995902A CN115086438A CN 115086438 A CN115086438 A CN 115086438A CN 202210995902 A CN202210995902 A CN 202210995902A CN 115086438 A CN115086438 A CN 115086438A
Authority
CN
China
Prior art keywords
processing unit
video processing
task
access request
domain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210995902.8A
Other languages
English (en)
Other versions
CN115086438B (zh
Inventor
金骏
焦茂轩
宣林
冯涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Semidrive Technology Co Ltd
Original Assignee
Nanjing Semidrive Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Semidrive Technology Co Ltd filed Critical Nanjing Semidrive Technology Co Ltd
Priority to CN202210995902.8A priority Critical patent/CN115086438B/zh
Publication of CN115086438A publication Critical patent/CN115086438A/zh
Application granted granted Critical
Publication of CN115086438B publication Critical patent/CN115086438B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Traffic Control Systems (AREA)

Abstract

本申请提供了一种任务处理方法、视频处理单元、部件及交通设备;任务处理方法包括:视频处理单元接收至少两个硬件域分别发送的候选访问请求,每个所述硬件域与多核异构系统的一个处理器核对应;所述视频处理单元获取各所述硬件域对应的访问配置信息;所述视频处理单元基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求;所述视频处理单元执行所述目标访问请求对应的至少一个目标任务。

Description

任务处理方法、视频处理单元、部件及交通设备
技术领域
本申请涉及计算机结构技术,尤其涉及任务处理方法、视频处理单元、部件及交通设备。
背景技术
针对支持多硬件域的片上系统(Systemonachip,Soc),多个硬件域可共享Soc上的视频处理单元(Video Processing Unit,VPU),使得多个硬件域都可以访问VPU;VPU可同时执行多个任务,以提高Soc的处理速度。因此,如何利用更小的系统开销实现多硬件域共享VPU是芯片技术领域一直追求的目标。
发明内容
本申请实施例提供一种任务处理方法、视频处理单元、部件及交通设备,能够利用更小的系统开销和更少的资源实现多硬件域共享VPU。
本申请实施例的技术方案是这样实现的:
第一方面,本申请实施例提供一种任务处理方法,包括:视频处理单元接收至少两个硬件域分别发送的候选访问请求,每个所述硬件域与多核异构系统的一个处理器核对应;
所述视频处理单元获取各所述硬件域对应的访问配置信息;
所述视频处理单元基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求;
所述视频处理单元执行所述目标访问请求对应的至少一个目标任务。
在一些实施例中,所述视频处理单元基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求,包括:
所述视频处理单元根据所述访问配置信息确定各所述硬件域的访问优先级;
按照所述访问优先级由高到低的顺序,将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果;
基于所述比较结果,从至少两个所述候选访问请求中确定所述目标访问请求;所述目标访问请求对应一个或多个所述硬件域。
在一些实施例中,所述按照所述访问优先级由高到低的顺序,将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果,包括:
按照所述访问优先级由高到低的顺序,对各所述硬件域发送的候选访问请求进行排序,得到候选访问请求序列;
基于所述候选访问请求序列,依次将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果。
在一些实施例中,所述基于所述比较结果,从至少两个所述候选访问请求中确定所述目标访问请求,包括:
确定所述候选访问请求序列中,前N个任务所需资源大小未超过所述视频处理单元的资源大小的候选访问请求为所述目标访问请求,N为正整数;
其中,所述目标访问请求对应的目标任务的数量,小于或等于所述视频处理单元的空闲任务数量。
在一些实施例中,所述方法还包括:响应于所述视频处理单元在时间阈值内未接收到针对所述目标任务的信息,所述视频处理单元停止执行所述目标任务。
在一些实施例中,所述方法还包括:所述视频处理单元确定任务执行结束最早的时间信息;
所述视频处理单元向候选硬件域发送所述时间信息,所述候选硬件域为除所述目标访问请求对应的硬件域以外的硬件域。
在一些实施例中,所述硬件域至少包括:智能驾驶域、智能信息域和座舱域中的一项或多项;
所述智能驾驶域的访问优先级高于所述智能信息域的访问优先级,所述智能信息域的访问优先级高于所述座舱域的访问优先级。
第二方面,本申请实施例提供一种视频处理单元,所述视频处理单元包括:
接收模块,用于接收至少两个硬件域分别发送的候选访问请求,每个所述硬件域与多核异构系统的一个处理器核对应;
获取模块,用于获取各所述硬件域对应的访问配置信息;
确定模块,用于基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求;
执行模块,用于执行所述目标访问请求对应的至少一个目标任务。
在一些实施例中,所述确定模块,用于根据所述访问配置信息确定各所述硬件域的访问优先级;
按照所述访问优先级由高到低的顺序,将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果;
基于所述比较结果,从至少两个所述候选访问请求中确定所述目标访问请求;所述目标访问请求对应一个或多个所述硬件域。
在一些实施例中,所述确定模块,用于按照所述访问优先级由高到低的顺序,对各所述硬件域发送的候选访问请求进行排序,得到候选访问请求序列;
基于所述候选访问请求序列,依次将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果。
在一些实施例中,所述确定模块,用于确定所述候选访问请求序列中,前N个任务所需资源大小未超过所述视频处理单元的资源大小的候选访问请求为所述目标访问请求,N为正整数;
其中,所述目标访问请求对应的目标任务的数量,小于或等于所述视频处理单元的空闲任务数量。
在一些实施例中,所述执行模块,用于响应于所述接收单元在时间阈值内未接收到针对所述目标任务的信息,停止执行所述目标任务。
在一些实施例中,所述确定模块,还用于确定任务执行结束最早的时间信息;
所述视频处理单元,还包括发送模块,用于向候选硬件域发送所述时间信息,所述候选硬件域为除所述目标访问请求对应的硬件域以外的硬件域。
第三方面,本申请实施例提供一种芯片,所述芯片包括上述的视频处理单元。
第四方面,本申请实施例提供一种部件,所述部件包括视频处理单元,所述视频处理单元能够执行上述的任务处理方法。
第五方面,本申请实施例提供一种交通设备,所述交通设备包括任务处理单元,所述任务处理单元能够执行上述的任务处理方法。
第六方面,本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于被处理器执行时,实现本申请实施例提供的任务处理方法。
第七方面,本申请实施例提供一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现上述的任务处理方法。
本申请实施例提供的任务处理方法包括:视频处理单元接收至少两个硬件域分别发送的候选访问请求,每个所述硬件域与多核异构系统的一个处理器核对应;获取各所述硬件域对应的访问配置信息;基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求;执行所述目标访问请求对应的至少一个目标任务。本申请实施例中,视频处理单元可以接收多个硬件域发送的候选访问请求,从多个候选访问请求中确定的目标访问请求可以对应多个硬件域,使得多个硬件域共享视频处理单元时,无需对视频处理单元进行虚拟化处理,节省了系统开销。
附图说明
图1是本申请实施例提供的任务处理方法的一种可选处理流程示意图;
图2是本申请实施例提供的视频处理单元基于访问配置信息和视频处理单元的资源信息,从候选访问请求中确定目标访问请求的一种可选处理流程示意图;
图3是本申请实施例提供的任务处理方法的一种详细可选处理流程示意图;
图4是本申请实施例提供的任务处理方法的另一种详细可选处理流程示意图;
图5是本申请实施例提供的针对智能汽车的任务处理方法的处理流程示意图;
图6是本申请实施例提供的视频处理单元的一种可选组成结构示意图;
图7是本申请实施例提供的芯片的组成结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解, “一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
应理解,在本申请的各种实施例中,各实施过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)视频处理单元,是一种视频处理平台核心引擎,具有硬件编解码功能以及减少中央处理器负荷的能力。
2)多核异构系统,由不同类型的多个单核心或多核心处理器构成,多核异构系统最简单的形式是由一个多核处理器和图形处理单元(Graphic Processing Unit,GPU)组成。
3)硬件域,多核异构系统中每个异构的中央处理器簇(CPU Cluster),中断控制器、时钟控制器等硬件资源,以及内存空间等组成了一个硬件域。一个Soc内有多个硬件域,每个硬件域是一组资源的集合。多个硬件域之间的通基于各个硬件域内的Mailbox硬件以及在域间共享内存实现,其中,域间共享内存由特权硬件域设定。
相关技术中,Soc上的每个硬件域分别对应一个属于硬件域自身的视频处理单元,若Soc上有M个硬件域,则存在与M个硬件域分别对应的M个视频处理单元,每个视频处理单元仅处理与该视频处理单元对应的硬件域的多个任务。但是,一个Soc上配置多个视频处理单元会造成资源的浪费;为了避免资源浪费,可通过虚拟化的方式对视频处理单元进行虚拟化处理,使得Soc上的所有硬件域共享一个视频处理单元;但是,对视频处理单元进行虚拟化处理的实现方案较复杂,且系统开销大。
基于此,本申请实施例提供一种任务处理方法,能够实现多个硬件域共享一个视频处理单元,且不增大系统开销。本申请实施例提供的任务处理方法的一种可选处理流程示意图,如图1所示,至少包括以下步骤:
步骤S101,视频处理单元接收至少两个硬件域分别发送的候选访问请求。
在一些实施例中,每个硬件域与多核异构系统的一个处理器核对应;以多核异构系统位于智能汽车为例,硬件域至少可以包括:智能驾驶域、智能信息域和座舱域中的一项或多项;其中,智能驾驶域实现的功能包括图像识别、数据处理和车辆控制等。智能信息域实现的功能包括智能汽车的仪表显示,如显示行驶速度、导航信息和电池电量等。座舱域实现的功能包括多媒体信息的显示、车载信息显示等。
在一些实施例中,智能汽车上的多核异构系统的硬件域还可以包括:动力域、底盘域和车身域;其中,动力域用于实现动力总成的优化与控制、电气智能故障诊断、智能节电和总线通信等。底盘域由传动系统、行驶系统、转向系统和制动系统共同构成;车身域用于集成灯光、雨刮洗涤、中控门锁、车窗控制、PEPS 智能钥匙、低频天线、低频天线驱动和电子转向柱锁等功能。
在一些实施例中,候选访问请求中包括待执行的任务的信息;作为示例,若待执行的任务为对视频进行解码,则候选访问请求至少可以包括:视频的解码参数、视频的格式和视频解码后的存储位置等。作为示例,若待执行的任务为对视频进行编码,则候选访问请求至少可以包括:编码参数、输入的原始数据的大小和格式、编码生成的视频的存储位置等。
在一些实施例中,视频处理单元与各硬件域是相互独立的,即视频处理单元不属于任何一个硬件域。
步骤S102,视频处理单元获取各所述硬件域对应的访问配置信息。
在一些实施例中,各硬件域对应的访问配置信息可以是预先配置的,访问配置信息可以存储于视频处理单元上的存储模块,也可以存储于包括所述视频处理单元的Soc上的存储器。
各硬件域对应的访问配置信息可以包括:硬件域访问视频处理单元的访问优先级;其中,访问优先级用于表征视频处理单元处理硬件域发送的访问信息的先后顺序,视频处理单元先处理访问优先级高的硬件域发送的访问请求,后处理访问优先级低的硬件域发送的访问请求。
在具体实施时,可以按照硬件域的功能配置硬件域访问视频处理单元的访问优先级;如对智能汽车行驶的安全性影响最大的硬件域的访问优先级最高,对智能汽车行驶的安全性影响最小的硬件域的访问优先级最低,或者配置对智能汽车行驶的安全性影响最小的硬件域无访问视频处理单元的权限。如此,通过视频处理单元优先执行对智能汽车行驶的安全性影响最大的硬件域的任务,能够提高智能汽车行驶的安全性。
在具体实施时,也可以按照执行硬件域对应的任务所需时长配置硬件域访问视频处理单元的访问优先级;如配置执行硬件域对应的任务所需时长最短的硬件域的访问优先级最高,配置执行硬件域对应的任务所需时长最长的硬件域的访问优先级最低。如此,通过视频处理单元优先执行所需时长短的任务,在执行完所需时长短的任务后,便释放对应的资源,利用释放的资源继续执行新的任务,使得视频处理单元能够执行更多的任务。
在具体实施时,还可以按照执行硬件域对应的任务所需资源大小配置硬件域访问视频处理单元的访问优先级;如配置任务所需资源最大的硬件域的访问优先级最高,或者配置任务所需资源最大的硬件域的访问优先级最低。
作为示例,多个硬件域同时向视频处理单元发送访问请求时,视频处理单元优先处理访问优先级最高的硬件域对应的访问请求,最后处理访问优先级最低的硬件域对应的访问请求。
本申请实施例中,可灵活地配置共享视频处理单元的硬件域,以及灵活配置硬件域访问视频处理单元的优先级,使得多个硬件域可按照共享视频处理单元,以及根据各硬件域的功能按照顺序访问视频处理单元,进而有效地利用视频处理单元的资源。
在一些实施例中,以智能汽车为例,可灵活地配置智能汽车的各硬件域是否具有访问视频处理单元的权限;也可以根据实际需要灵活地配置智能汽车的各硬件域访问视频处理单元的访问优先级。作为示例,若视频处理单元的资源较少,则可配置对智能汽车行驶的安全性影响较小的车身域不具有访问视频处理单元的权限。配置对智能汽车行驶的安全性影响最大的智能驾驶域的访问优先级最高,配置对智能汽车行驶的安全性影响比较大的智能信息域的访问优先级次之,配置对智能汽车行驶的安全性影响较小的座舱域的访问优先级最低。
步骤S103,视频处理单元基于访问配置信息和视频处理单元的资源信息,从候选访问请求中确定目标访问请求。
在一些实施例中,目标访问请求的数量可以是一个,也可以是多个,每个访问请求对应的任务可以是一个,也可以是多个。
步骤S104,视频处理单元执行目标访问请求对应的至少一个目标任务。
在一些实施例中,视频处理单元基于目标访问请求创建任务、并执行任务。
针对上述步骤S103,在一些实施例中,视频处理单元基于访问配置信息和视频处理单元的资源信息,从候选访问请求中确定目标访问请求的一种可选处理流程,如图2所示,至少包括以下步骤:
步骤S201,视频处理单元根据访问配置信息确定各硬件域的访问优先级。
步骤S202,视频处理单元按照访问优先级由高到低的顺序,将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果。
在具体实施时,视频处理单元可以按照访问优先级由高到低的顺序,对各硬件域发送的候选访问请求进行排序,得到候选访问请求序列;再基于候选访问请求序列,依次将各候选访问请求的任务所需资源大小,分别与视频处理单元的资源大小进行比较,得到比较结果。其中,视频处理单元的资源大小指视频处理单元中的空闲资源的大小,或者指视频处理单元的可用资源的大小。
在一些实施例中,目标访问请求的数量可以是一个或多个,若目标访问请求的数量为多个,则表征有多个硬件域同时访问视频处理单元,视频处理单元同时处理多个硬件域对应的任务。
步骤S203,基于比较结果,从至少两个候选访问请求中确定目标访问请求。
在一些实施例中,确定候选访问请求序列中,前N个任务所需资源大小未超过所述视频处理单元的资源大小的候选访问请求为所述目标访问请求。
在一些实施例中,视频处理单元在确定目标访问请求时,还可以参考视频处理单元当前可执行的任务数量;作为示例,视频处理单元能够同时执行的任务数量为X,当前有Y个正在执行的任务,则视频处理单元的空闲任务数量为(X-Y),视频处理单元确定的目标访问请求对应的任务数量应小于或等于(X-Y)。若候选访问请求序列中前N个候选访问请求对应任务数量为(X-Y),即使第(N+1)个候选访问请求的任务所需资源大小小于视频处理单元的可用资源大小,仍旧不能将第(N+1)个候选访问请求确定为目标访问请求。其中,Y个正在执行的任务可以是具有访问视频处理单元权限的任意硬件域对应的任务,该任意硬件域可以与发送目标访问请求的硬件域相同,也可以与发送目标访问请求的硬件域不同。
下面通过详细实施例对步骤S202和步骤S203的处理过程进行说明。若候选访问请求序列包括候选访问请求A、候选访问请求B、候选访问请求C和候选访问请求D,则视频处理单元先将候选访问请求A对应的任务所需资源大小,与视频处理单元当前的可用资源的大小进行比较;候选访问请求A对应的任务所需资源大小小于视频处理单元的可用资源的大小,且候选访问请求A对应的任务数量小于视频处理单元的空闲任务数量,确定候选访问请求A为目标访问请求。
接着,视频处理单元将候选访问请求B对应的任务所需资源大小,与视频处理单元当前的可用资源的大小进行比较;候选访问请求B对应的任务所需资源大小小于或等于视频处理单元的可用资源的大小,且候选访问请求B对应的任务数量小于视频处理单元的空闲任务数量,确定候选访问请求B为目标访问请求。其中,视频处理单元当前的可用资源为视频处理单元总的资源减去当前执行的任务所占用的资源、以及候选访问请求A对应的任务所需资源后,所得到的剩余资源;视频处理单元的空闲任务数量为视频处理单元能够同时执行的总任务数量减去当前执行的任务数量、以及候选访问请求A对应的任务数量后,所得到的任务数量。
然后,视频处理单元将候选访问请求C对应的任务所需资源大小,与视频处理单元当前的可用资源的大小进行比较;候选访问请求C对应的任务所需资源大小大于视频处理单元的可用资源的大小,则确定候选访问请求C不是目标访问请求。其中,视频处理单元当前的可用资源为视频处理单元总的资源减去当前执行的任务所占用的资源、候选访问请求A对应的任务所需资源以及候选访问请求B对应的任务所需资源后,所得到的剩余资源。
最后,视频处理单元将候选访问请求D对应的任务所需资源大小,与视频处理单元的可用资源的大小进行比较,候选访问请求D对应的任务所需资源大小视频处理单元的可用资源的大小,候选访问请求C对应的任务数量大于视频处理单元的空闲任务数量,确定候选访问请求D不是目标访问请求。其中,视频处理单元当前的可用资源为视频处理单元总的资源减去当前执行的任务所占用的资源、候选访问请求A对应的任务所需资源以及候选访问请求B对应的任务所需资源后,所得到的剩余资源。视频处理单元的空闲任务数量为视频处理单元能够同时执行的总任务数量减去当前执行的任务数量、候选访问请求A对应的任务数量以及候选访问请求B对应的任务数量后,所得到的任务数量。
本申请实施例提供的任务处理方法的一种详细可选处理流程示意图,如图3所示,至少包括以下步骤:
步骤S301,视频处理单元接收至少两个硬件域分别发送的候选访问请求。
步骤S302,视频处理单元获取各所述硬件域对应的访问配置信息。
步骤S303,视频处理单元基于访问配置信息和视频处理单元的资源信息,从候选访问请求中确定目标访问请求。
步骤S304,视频处理单元执行所述目标访问请求对应的至少一个目标任务。
在一些实施例中,步骤S301至步骤S304的具体处理过程与步骤S101至步骤S104相同,这里不再赘述。
步骤S305,响应于视频处理单元在时间阈值内未接收到针对第一目标任务的信息,视频处理单元停止执行第一目标任务。
在一些实施例中,时间阈值可灵活设定,如设置时间阈值为100毫秒。针对不同的业务类型,设置的时间阈值可以不同,如设置编码任务的时间阈值为100毫秒,设置解码任务的时间阈值为90毫秒。若在设定的时间阈值内,未接收到针对第一目标任务的数据或请求,则视频处理单元停止执行第一目标任务,并释放第一目标任务对应的资源。或者,若在设定的时间阈值内,未接收到针对第一目标任务的数据或请求,则视频处理单元判断第一目标任务对应的硬件域发生故障,视频处理单元停止执行第一目标任务对应的硬件域的全部任务,如此,通过配置视频处理单元与硬件域交互任务信息的时间阈值,使得在时间阈值内未收到任务信息时,结束该任务或结束该任务对应的硬件域的全部任务,以便释放该任务对应的资源,并利用释放的资源执行新的目标任务,提高了视频处理单元的效率和资源利用率。
本申请实施例提供的任务处理方法的另一种详细可选处理流程示意图,如图4所示,至少包括以下步骤:
步骤S401,视频处理单元接收至少两个硬件域分别发送的候选访问请求。
步骤S402,视频处理单元获取各所述硬件域对应的访问配置信息。
步骤S403,视频处理单元基于访问配置信息和视频处理单元的资源信息,从候选访问请求中确定目标访问请求。
步骤S404,视频处理单元执行所述目标访问请求对应的至少一个目标任务。
在一些实施例中,步骤S401至步骤S404的具体处理过程与步骤S101至步骤S104相同,这里不再赘述。
步骤S405,视频处理单元确定任务执行结束最早的时间信息。
在一些实施例中,视频处理单元根据目标访问请求中携带的目标任务的信息,计算各目标任务执行结束的时间信息,进而确定任务执行结束最早的时间信息。
步骤S406,视频处理单元向候选硬件域发送所述时间信息。
在一些实施例中,候选硬件域为除所述目标访问请求对应的硬件域以外的硬件域。通过候选硬件域发送任务执行结束最早的时间信息,使得候选硬件域能够根据该时间信息确定是否等待访问视频处理单元。
下面以智能汽车为例,对本申请实施例提供的如图5所示的针对智能汽车的任务处理方法的处理流程进行详细说明。智能汽车包括Soc,Soc包括视频处理单元,为智能汽车的智能驾驶域、智能信息域和座舱域配置访问视频处理单元的优先级,且所述智能驾驶域的访问优先级高于所述智能信息域的访问优先级,所述智能信息域的访问优先级高于所述座舱域的访问优先级。
在一场景中,步骤a1,智能驾驶域对应的智能驾驶系统向视频处理单元中的多任务处理模块发送访问请求,以请求访问视频处理单元,使得视频处理单元对智能驾驶系统中的多媒体服务产生的任务进行处理。
步骤b1,座舱域对应的座舱系统向视频处理单元中的多任务处理模块发送访问请求,以请求访问视频处理单元,使得视频处理单元对座舱系统中的多媒体服务产生的任务进行处理。
步骤c1,视频处理单元中的多任务处理模块获取智能驾驶域的访问配置信息和座舱域的访问配置信息,以确定智能驾驶域和座舱域的访问优先级。
步骤c2,视频处理单元中的多任务处理模块获取视频处理单元当前的可用资源大小,以及当前的空闲任务数量。
视频处理单元中的多任务处理模块基于智能驾驶域的访问配置信息和座舱域的访问配置信息、视频处理单元当前的可用资源大小、以及视频处理单元当前的空闲任务数量,确定智能驾驶域可以访问视频处理单元,座舱域不能访问视频处理单元。
步骤a2,视频处理单元中的多任务处理模块向智能驾驶系统发送请求成功的反馈消息。
步骤b2,视频处理单元中的多任务处理模块向座舱域发送请求失败的反馈消息。
步骤a3,视频处理单元针对智能驾驶域的访问请求,与智能驾驶域进行任务交互。
在一些实施例中,任务交互包括:视频处理单元根据智能驾驶域发送的数据创建任务、执行任务,向智能驾驶域反馈任务执行结果。
本申请实施例提供的任务处理方法,多个硬件域共享一个视频处理单元,一个视频处理单元可以同时处理多个硬件域的任务;无需对视频处理单元进行虚拟化处理,节省了系统开销。通过配置视频处理单元与硬件域交互任务信息的时间阈值,使得在时间阈值内未收到任务信息时,结束该任务或结束该任务对应的硬件域的全部任务,以便释放该任务对应的资源,并利用释放的资源执行新的目标任务,提高了视频处理单元的效率和资源利用率。
基于上述图1至图5所示的任务处理方法,本申请实施例还提供一种视频处理单元,视频处理单元的一种可选组成结构示意图,如图6所示,包括:
接收模块601,用于接收至少两个硬件域分别发送的候选访问请求,每个所述硬件域与多核异构系统的一个处理器核对应;
获取模块602,用于获取各所述硬件域对应的访问配置信息;
确定模块603,用于基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求;
执行模块604,用于执行所述目标访问请求对应的至少一个目标任务。
在一些实施例中,所述确定模块603,用于根据所述访问配置信息确定各所述硬件域的访问优先级;
按照所述访问优先级由高到低的顺序,将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果;
基于所述比较结果,从至少两个所述候选访问请求中确定所述目标访问请求;所述目标访问请求对应一个或多个所述硬件域。
在一些实施例中,所述确定模块603,用于按照所述访问优先级由高到低的顺序,对各所述硬件域发送的候选访问请求进行排序,得到候选访问请求序列;
基于所述候选访问请求序列,依次将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果。
在一些实施例中,所述确定模块603,用于确定所述候选访问请求序列中,前N个任务所需资源大小未超过所述视频处理单元的资源大小的候选访问请求为所述目标访问请求,N为正整数;
其中,所述目标访问请求对应的目标任务的数量,小于或等于所述视频处理单元的空闲任务数量。
在一些实施例中,所述执行模块604,用于响应于所述接收单元在时间阈值内未接收到针对所述目标任务的信息,停止执行所述目标任务。
在一些实施例中,所述确定模块603,还用于确定任务执行结束最早的时间信息;
所述视频处理单元,还包括发送模块,用于向候选硬件域发送所述时间信息,所述候选硬件域为除所述目标访问请求对应的硬件域以外的硬件域。其中,发送模块在图6中未示出。
本申请实施例还提供一种芯片,芯片700的组成结构示意图,如图7所示,包括视频处理单元701,视频处理单元701能够执行上述的任务处理方法。芯片700至少一个处理器710、存储器750和总线740;芯片700中的各个组件通过总线740耦合在一起。可理解,总线740用于实现这些组件之间的连接通信。总线740除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图7中将各种总线都标为总线740。
处理器710可以内置于片上系统或专用集成电路(Application SpecificIntegrated Circuit,ASIC),处理器710也可以位于一个独立的半导体芯片上,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor)、微处理器,微控制单元(Microcontroller Unit,MCU),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
存储器750中存储有用于实现本申请实施例提供的任务处理方法的可执行指令,任务处理方法可由图6所示的芯片中的接收模块601、获取模块602、确定模块603和执行模块604实现;存储器750可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器750可选地包括在物理位置上远离处理器710的一个或多个存储设备。
在一些实施例中,存储器750能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集。
在一些实施例中,芯片700还可以包括:
操作系统751,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块752,用于经由一个或多个(有线或无线)网络接口720到达其他计算设备,示例性的网络接口720包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等。
本申请实施例还提供一种部件,所述部件包括芯片,所述芯片能够执行上述图1至图5所示的任务处理方法。
在一些可选实施例中,所述部件可以是交通设备上的部件,如底盘、车门、主板、仪表盘等;所述交通设备可以是智能交通设备,如智能汽车等。
本申请实施例还提供一种交通设备,所述交通设备包括芯片,所述芯片能够执行本申请实施例提供的如上述图1至图5所示的任务处理方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的如上述图1至图5所示的任务处理方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的任务处理方法,例如,如图1至图5示出的任务处理方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
本申请实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现本申请所述的任务处理方法。
以上,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。

Claims (13)

1.一种任务处理方法,其特征在于,所述方法包括:
视频处理单元接收至少两个硬件域分别发送的候选访问请求,每个所述硬件域与多核异构系统的一个处理器核对应;
所述视频处理单元获取各所述硬件域对应的访问配置信息;
所述视频处理单元基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求;
所述视频处理单元执行所述目标访问请求对应的至少一个目标任务。
2.根据权利要求1所述的方法,其特征在于,所述视频处理单元基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求,包括:
所述视频处理单元根据所述访问配置信息确定各所述硬件域的访问优先级;
按照所述访问优先级由高到低的顺序,将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果;
基于所述比较结果,从至少两个所述候选访问请求中确定所述目标访问请求;所述目标访问请求对应一个或多个所述硬件域。
3.根据权利要求2所述的方法,其特征在于,所述按照所述访问优先级由高到低的顺序,将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果,包括:
按照所述访问优先级由高到低的顺序,对各所述硬件域发送的候选访问请求进行排序,得到候选访问请求序列;
基于所述候选访问请求序列,依次将各所述候选访问请求的任务所需资源大小,分别与所述视频处理单元的资源大小进行比较,得到比较结果。
4.根据权利要求3所述的方法,其特征在于,所述基于所述比较结果,从至少两个所述候选访问请求中确定所述目标访问请求,包括:
确定所述候选访问请求序列中,前N个任务所需资源大小未超过所述视频处理单元的资源大小的候选访问请求为所述目标访问请求,N为正整数;
其中,所述目标访问请求对应的目标任务的数量,小于或等于所述视频处理单元的空闲任务数量。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述视频处理单元在时间阈值内未接收到针对所述目标任务的信息,所述视频处理单元停止执行所述目标任务。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述方法还包括:
所述视频处理单元确定任务执行结束最早的时间信息;
所述视频处理单元向候选硬件域发送所述时间信息,所述候选硬件域为除所述目标访问请求对应的硬件域以外的硬件域。
7.根据权利要求1至5任一项所述的方法,其特征在于,所述硬件域至少包括:智能驾驶域、智能信息域和座舱域中的一项或多项;
所述智能驾驶域的访问优先级高于所述智能信息域的访问优先级,所述智能信息域的访问优先级高于所述座舱域的访问优先级。
8.一种视频处理单元,其特征在于,所述视频处理单元包括:
接收模块,用于接收至少两个硬件域分别发送的候选访问请求,每个所述硬件域与多核异构系统的一个处理器核对应;
获取模块,用于获取各所述硬件域对应的访问配置信息;
确定模块,用于基于所述访问配置信息和所述视频处理单元的资源信息,从所述候选访问请求中确定目标访问请求;
执行模块,用于执行所述目标访问请求对应的至少一个目标任务。
9.一种芯片,其特征在于,所述芯片包括视频处理单元,所述视频处理单元能够执行权利要求1至7任一项所述的任务处理方法。
10.一种部件,其特征在于,所述部件包括视频处理单元,所述视频处理单元能够执行权利要求1至7任一项所述的任务处理方法。
11.一种交通设备,其特征在于,所述交通设备包括任务处理单元,所述任务处理单元能够执行权利要求1至7任一项所述的任务处理方法。
12.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至7任一项所述的任务处理方法。
13.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机程序/指令,所述计算机程序/指令被处理器执行时实现权利要求1至7任一项所述的任务处理方法。
CN202210995902.8A 2022-08-19 2022-08-19 任务处理方法、视频处理单元、部件及交通设备 Active CN115086438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210995902.8A CN115086438B (zh) 2022-08-19 2022-08-19 任务处理方法、视频处理单元、部件及交通设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210995902.8A CN115086438B (zh) 2022-08-19 2022-08-19 任务处理方法、视频处理单元、部件及交通设备

Publications (2)

Publication Number Publication Date
CN115086438A true CN115086438A (zh) 2022-09-20
CN115086438B CN115086438B (zh) 2022-11-11

Family

ID=83243970

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210995902.8A Active CN115086438B (zh) 2022-08-19 2022-08-19 任务处理方法、视频处理单元、部件及交通设备

Country Status (1)

Country Link
CN (1) CN115086438B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115904761A (zh) * 2023-01-03 2023-04-04 南京芯驰半导体科技有限公司 片上系统、车辆及视频处理单元虚拟化方法
CN116643892A (zh) * 2023-07-25 2023-08-25 北京芯驰半导体科技有限公司 内存管理方法、装置、芯片及交通设备
CN117149694A (zh) * 2023-10-24 2023-12-01 南京芯驰半导体科技有限公司 基于多核异构的接口控制方法、装置及电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110769045A (zh) * 2019-10-16 2020-02-07 世纪龙信息网络有限责任公司 数据处理方法、装置、计算机设备和存储介质
CN113448724A (zh) * 2020-03-28 2021-09-28 英特尔公司 用于微处理器配置的动态控制的装置和方法
CN113742068A (zh) * 2021-08-27 2021-12-03 深圳市商汤科技有限公司 任务调度方法、装置、设备、存储介质及计算机程序产品
CN113886052A (zh) * 2021-10-26 2022-01-04 上海商汤科技开发有限公司 任务调度方法、装置、设备、存储介质
CN114185823A (zh) * 2022-02-17 2022-03-15 深圳比特微电子科技有限公司 仲裁器、仲裁方法、控制器和芯片
US20220121912A1 (en) * 2020-10-21 2022-04-21 Samsung Electronics Co., Ltd. Data processing method and apparatus
US20220197539A1 (en) * 2020-12-17 2022-06-23 EMC IP Holding Company LLC Method, electronic device, and computer program product for data processing

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110769045A (zh) * 2019-10-16 2020-02-07 世纪龙信息网络有限责任公司 数据处理方法、装置、计算机设备和存储介质
CN113448724A (zh) * 2020-03-28 2021-09-28 英特尔公司 用于微处理器配置的动态控制的装置和方法
US20220121912A1 (en) * 2020-10-21 2022-04-21 Samsung Electronics Co., Ltd. Data processing method and apparatus
US20220197539A1 (en) * 2020-12-17 2022-06-23 EMC IP Holding Company LLC Method, electronic device, and computer program product for data processing
CN113742068A (zh) * 2021-08-27 2021-12-03 深圳市商汤科技有限公司 任务调度方法、装置、设备、存储介质及计算机程序产品
CN113886052A (zh) * 2021-10-26 2022-01-04 上海商汤科技开发有限公司 任务调度方法、装置、设备、存储介质
CN114185823A (zh) * 2022-02-17 2022-03-15 深圳比特微电子科技有限公司 仲裁器、仲裁方法、控制器和芯片

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115904761A (zh) * 2023-01-03 2023-04-04 南京芯驰半导体科技有限公司 片上系统、车辆及视频处理单元虚拟化方法
CN116643892A (zh) * 2023-07-25 2023-08-25 北京芯驰半导体科技有限公司 内存管理方法、装置、芯片及交通设备
CN116643892B (zh) * 2023-07-25 2023-10-27 北京芯驰半导体科技有限公司 内存管理方法、装置、芯片及交通设备
CN117149694A (zh) * 2023-10-24 2023-12-01 南京芯驰半导体科技有限公司 基于多核异构的接口控制方法、装置及电子设备
CN117149694B (zh) * 2023-10-24 2024-02-23 南京芯驰半导体科技有限公司 基于多核异构的接口控制方法、装置及电子设备

Also Published As

Publication number Publication date
CN115086438B (zh) 2022-11-11

Similar Documents

Publication Publication Date Title
CN115086438B (zh) 任务处理方法、视频处理单元、部件及交通设备
CN109522099B (zh) 提高非实时性操作系统实时性的方法及其系统
CN111338315B (zh) Autosar中的虚拟电子控制单元
CN114327137A (zh) 基于车机多操作系统的触控方法、装置和计算机设备
US20130298136A1 (en) Multiprocessor system
JP4985662B2 (ja) プログラム、及び制御装置
CN114138422B (zh) 可扩展性的NVMe存储虚拟化方法和系统
CN114048005A (zh) 一种gpu虚拟化方法及装置
CN116643892B (zh) 内存管理方法、装置、芯片及交通设备
CN116775085B (zh) 多核异构片上系统更新方法、装置、芯片及交通设备
CN111791886B (zh) 用于车辆的实时控制系统以及经由实时控制系统执行车辆控制的方法
CN113391821B (zh) 一种非对称多处理器嵌入式操作系统
US20220269546A1 (en) Control device, method, program, and vehicle
CN112764822A (zh) 操作系统启动方法、装置、设备及介质
US20210173705A1 (en) Method and apparatus for software isolation and security utilizing multi-soc orchestration
CN112486142B (zh) 将虚拟化io架构和汽车应用集成在ecu的方法及系统
CN114244878B (zh) 一种异构多核环境下的设备分布式访问系统及方法
CN113377407B (zh) 基于posix接口的域控制器刷新方法和装置
WO2024074090A1 (zh) 智能座舱的实现方法、智能座舱、计算机可读介质
US20220118992A1 (en) Operation management apparatus, system, operation management method, and non-transitory computer readable medium
CN117331712A (zh) 跨域通信方法、装置、设备及存储介质
CN118113637A (zh) 信息处理方法、装置、计算机设备及存储介质
CN116954892A (zh) 内存划分的方法、装置、电子设备、介质及车辆
CN116880962A (zh) 确定虚拟机管理器延迟信息的方法、装置、设备及车辆
CN115202682A (zh) Ota管理器及中心、更新控制方法、非暂时性存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant