CN103064736B - 任务处理装置及方法 - Google Patents

任务处理装置及方法 Download PDF

Info

Publication number
CN103064736B
CN103064736B CN201210520190.0A CN201210520190A CN103064736B CN 103064736 B CN103064736 B CN 103064736B CN 201210520190 A CN201210520190 A CN 201210520190A CN 103064736 B CN103064736 B CN 103064736B
Authority
CN
China
Prior art keywords
task
processing unit
scheduled
task processing
unit
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.)
Active
Application number
CN201210520190.0A
Other languages
English (en)
Other versions
CN103064736A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201210520190.0A priority Critical patent/CN103064736B/zh
Publication of CN103064736A publication Critical patent/CN103064736A/zh
Priority to US14/096,398 priority patent/US9519338B2/en
Application granted granted Critical
Publication of CN103064736B publication Critical patent/CN103064736B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4893Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues taking into account power or heat criteria
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Power Sources (AREA)

Abstract

本发明公开了一种任务处理装置及方法,属于无线通讯技术领域。方法包括:任务处理装置获取配置的一至多个任务,并在一至多个任务中选定被调度的任务;根据被调度的任务的控制参数对被调度的任务进行处理得到处理结果,输出被调度的任务的处理结果,并根据被调度的任务的控制参数调度下一级任务处理装置对被调度的任务进行处理。本发明通过任务处理装置从配置的一至多个任务中选定被调度的任务后,根据被调度的任务的控制参数实时处理被调度的任务,实现每个任务处理装置独立进行任务调度处理;另外,通过任务处理装置之间的相互调度,而无需再通过独立的调度器进行集中调度,实现了任务处理的分布式调度,具有调度速度快、任务处理效率高的特点。

Description

任务处理装置及方法
技术领域
本发明涉及电子技术领域,特别涉及一种任务处理装置及方法。
背景技术
随着多核技术的快速发展,SOC(System On Chip,系统级芯片)变得越来越复杂,SOC内的处理单元的数量也越来越多。随着处理单元数量的增加,待处理的任务数量也随之高速增长,如何高效、快速地处理任务,成为了衡量SOC性能的一个关键标准。
现有技术中,SOC在进行任务处理时,首先将各个处理单元当前的状态汇总至一个或多个单独的调度器,然后由该调度器根据各个处理单元当前的状态调度对应的处理单元进行任务处理。
由于现有技术在处理任务时,由于需要通过一个或多个单独的调度器根据各个处理单元的状态调度各个处理单元进行任务处理,即采用集中式调度的方式对任务进行处理,因此造成调度需要的信息交互实时性差,无法实时调度各个处理单元处理任务,各个处理单元也无法实时响应调度器的调度,所以调度响应周期长,导致任务处理的效率低。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种任务处理装置及方法。所述技术方案如下:
第一方面,提供了一种任务处理装置,所述任务处理装置包括:
任务输入单元,用于获取配置的一至多个任务;
调度单元,用于在所述一至多个任务中选定被调度的任务;
处理单元,用于根据所述调度单元选定的被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果;
数据输出单元,用于输出所述处理单元处理所述被调度的任务得到的处理结果;
所述调度单元,还用于根据所述被调度的任务的控制参数调度下一级任务处理装置对所述被调度的任务继续进行处理;
其中,所述下一级任务处理装置与所述任务处理装置相同,或者为所述任务处理装置之外的其他任务处理装置。
在第一方面的第一种可能的实现方式中,所述任务处理装置,还包括:
电源管理单元,用于在所述任务处理装置处于空闲状态时,则根据对外接口信号的变化触发打开时钟信号,并在预设时间内打开电源,以促使所述任务处理装置进入工作状态;
所述电源管理单元,还用于在所述任务处理装置进入空闲状态时,则根据所述任务处理装置的类型对所述任务处理装置进行低功耗管理。
结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述任务输入单元还用于获取所述一至多个任务的入口信息,所述入口信息中至少包括每个任务的控制参数的地址;
所述任务处理装置,还包括:
任务解析单元,用于根据所述被调度的任务的入口信息中的控制参数的地址获取所述被调度的任务的控制参数,所述控制参数中包括数据输入地址及数据输出地址;
数据输入单元,用于根据所述任务解析单元获取到的控制参数中的数据输入地址输入所述被调度的任务的数据;
所述处理单元,具体用于根据所述数据输入单元输入的数据对所述被调度的任务进行处理得到处理结果;
所述数据输出单元,具体用于根据所述任务解析单元获取到的控制参数中的数据输出地址输出所述处理单元处理所述被调度的任务得到的处理结果。
结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,进一步地,所述任务解析单元获取到的所述被调度的任务的控制参数中还包括所述下一级任务处理装置的入口地址;
所述调度单元,具体用于根据所述任务解析单元获取到的控制参数中的下一级任务处理装置的入口地址调度所述下一级任务处理装置对所述被调度的任务进行处理。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述任务处理装置还包括:
消息输出单元,用于向所述下一级任务处理装置发送任务启动控制消息,以调度所述下一级任务处理装置对所述被调度的任务进行处理;或者,
中断输出单元,用于向所述下一级任务处理装置发送中断通知,以调度所述下一级任务处理装置对所述被调度的任务进行中断处理。
结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述任务处理装置还包括:
一致性管理单元,用于对所述数据输出单元输出处理结果、所述消息输出单元输出任务启动控制消息及所述中断输出单元输出中断通知的顺序进行维护。
结合第一方面或第一方面的第一种可能的实现方式或第三种可能的实现方式或第四种可能的实现方式或第五种可能的实现方式,在第六种可能的实现方式中,所述任务处理装置还包括:
中断输入单元,用于输入前一级任务处理装置发送的中断通知,所述前一级任务处理装置与所述任务处理装置相同,或者为所述任务处理装置之外的其他任务处理装置;
所述处理单元,还用于根据所述中断输入单元输入的中断通知中断对所述被调度的任务的处理。
第二方面,还提供了一种任务处理方法,所述方法包括:
任务处理装置获取配置的一至多个任务,并在所述一至多个任务中选定被调度的任务;
根据所述被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果,输出所述被调度的任务的处理结果,并根据所述被调度的任务的控制参数调度下一级任务处理装置对所述被调度的任务继续进行处理;
其中,所述下一级任务处理装置与所述任务处理装置相同,或者为所述任务处理装置之外的其他任务处理装置。
结合第二方面,在第一种可能的实现方式中,所述任务处理装置获取配置的一至多个任务之前,还包括:
如果所述任务处理装置处于空闲状态,则根据对外接口信号的变化触发打开时钟信号,并在预设时间内打开电源,以促使所述任务处理装置进入工作状态;
所述根据所述被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果之后,还包括:
如果所述任务处理装置进入空闲状态,则根据所述任务处理装置的类型对所述任务处理装置进行低功耗管理。
结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述一至多个任务的入口信息中至少包括每个任务的控制参数的地址;
所述根据所述被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果之前,还包括:
根据所述被调度的任务的入口信息中的控制参数的地址获取所述被调度的任务的控制参数,所述控制参数中包括数据输入地址及数据输出地址;
根据所述控制参数中的数据输入地址输入所述被调度的任务的数据;
所述根据所述被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果,输出所述被调度的任务的处理结果,具体包括:
根据输入的所述被调度的任务的数据对所述被调度的任务进行处理得到处理结果,并根据所述控制参数中的数据输出地址输出所述被调度的任务的处理结果。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述被调度的任务的控制参数中还包括所述下一级任务处理装置的入口地址;
所述调度下一级任务处理装置对所述被调度的任务进行处理,具体包括:
根据所述控制参数中的下一级任务处理装置的入口地址调度所述下一级任务处理装置对所述被调度的任务进行处理。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述根据所述控制参数中的下一级任务处理装置的入口地址调度所述下一级任务处理装置对所述被调度的任务进行处理之后,还包括:
向所述下一级任务处理装置发送任务启动控制消息,以调度所述下一级任务处理装置对所述被调度的任务进行处理;或者,
向所述下一级任务处理装置发送中断通知,以调度所述下一级任务处理装置对所述被调度的任务进行中断处理。
结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,所述方法还包括:
对输出处理结果、输出任务启动控制消息及中断通知的顺序进行维护。
结合第二方面或第二方面的第一种可能的实现方式或第三种可能的实现方式或第四种可能的实现方式或第五种可能的实现方式,在第六种可能的实现方式中,所述方法还包括:
输入前一级任务处理装置发送的中断通知,根据所述中断通知中断对所述被调度的任务的处理;
其中,所述前一级任务处理装置与所述任务处理装置相同,或者为所述任务处理装置之外的其他任务处理装置。
本发明实施例提供的技术方案带来的有益效果是:
通过任务处理装置从配置的一至多个任务中选定被调度的任务后,根据被调度的任务的控制参数实时处理被调度的任务,实现了每个任务处理装置可以独立进行任务调度处理;另外,通过任务处理装置之间的相互调度,而无需再通过独立的调度器进行集中调度,实现了任务处理的分布式调度,因此具有调度速度快、任务处理效率高的特点。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种任务处理方法的流程图;
图2是本发明实施例二提供的一种任务处理系统示意图;
图3是本发明实施例二提供的一种任务处理方法的流程图;
图4是本发明实施例二提供的一种任务处理流程示意图;
图5是本发明实施例二提供的一种任务处理单元的时序示意图;
图6是本发明实施例三提供的一种任务处理装置的结构示意图;
图7是本发明实施例三提供的另一种任务处理装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
本发明实施例提供了一种任务处理方法,参见图1,方法流程包括:
步骤101:任务处理装置获取配置的一至多个任务,并在一至多个任务中选定被调度的任务;
步骤102:根据被调度的任务的控制参数对被调度的任务进行处理得到处理结果,输出被调度的任务的处理结果;
进一步地,任务处理装置获取配置的一至多个任务之前,还包括:
如果任务处理装置处于空闲状态,则根据对外接口信号的变化触发打开时钟信号,并在预设时间内打开电源,以促使任务处理装置进入工作状态;
根据被调度的任务的控制参数对被调度的任务进行处理得到处理结果之后,还包括:
如果任务处理装置进入空闲状态,则根据任务处理装置的类型对任务处理装置进行低功耗管理。
进一步地,一至多个任务的入口信息中至少包括每个任务的控制参数的地址;
根据被调度的任务的控制参数对被调度的任务进行处理得到处理结果之前,还包括:
根据被调度的任务的入口信息中的控制参数的地址获取被调度的任务的控制参数,控制参数中包括数据输入地址及数据输出地址;
根据控制参数中的数据输入地址输入被调度的任务的数据;
根据被调度的任务的控制参数对被调度的任务进行处理得到处理结果,输出被调度的任务的处理结果,具体包括:
根据输入的被调度的任务的数据对被调度的任务进行处理得到处理结果,并根据控制参数中的数据输出地址输出被调度的任务的处理结果。
步骤103:根据被调度的任务的控制参数调度下一级任务处理装置对被调度的任务继续进行处理;其中,下一级任务处理装置与该任务处理装置相同,或者为该任务处理装置之外的其他任务处理装置。
进一步地,被调度的任务的控制参数中还包括下一级任务处理装置的入口地址;
调度下一级任务处理装置对被调度的任务进行处理,具体包括:
根据控制参数中的下一级任务处理装置的入口地址调度下一级任务处理装置对被调度的任务进行处理。
进一步地,根据控制参数中的下一级任务处理装置的入口地址调度下一级任务处理装置对被调度的任务进行处理之后,还包括:
向下一级任务处理装置发送任务启动控制消息,以调度下一级任务处理装置对被调度的任务进行处理;或者,
向下一级任务处理装置发送中断通知,以调度下一级任务处理装置对被调度的任务进行中断处理。
进一步地,该方法还包括:
对输出处理结果、输出任务启动控制消息及中断通知的顺序进行维护。
进一步地,该方法还包括:
输入前一级任务处理装置发送的中断通知,根据中断通知中断对被调度的任务的处理;
其中,前一级任务处理装置与任务处理装置相同,或者为任务处理装置之外的其他任务处理装置。
本实施例提供的方法,通过任务处理装置从配置的一至多个任务中选定被调度的任务后,根据被调度的任务的控制参数实时处理被调度的任务,实现了每个任务处理装置可以独立进行任务处理;另外,通过任务处理装置之间的相互调度,而无需再通过独立的调度器进行集中调度,实现了任务处理的分布式调度,因此具有调度速度快、任务处理效率高的特点。另外,根据任务处理装置的状态和类型对任务处理装置进行电源管理,从而降低了任务处理装置的能耗。
实施例二
本发明实施例提供了一种任务处理方法,该方法通过采用分布式调度的方式对任务进行处理,从而提高了任务处理的效率与速度。为了便于对本实施例提供的方法进行详细的说明,现结合图2所示的任务处理系统中的处理装置对任务进行处理的过程为例,对本实施例提供的方法进行举例说明。参见图3,本实施提供的方法流程包括:
步骤301:任务处理装置获取配置的一至多个任务,每个任务的入口信息中至少包括每个任务的控制参数的地址;
针对该步骤,一至多个任务可以是由任务处理装置的前一级任务处理装置配置的,也可以是由任务处理装置自身配置的,还可以是由任务处理装置的下一级任务处理装置配置的,也就是说,任务处理装置可以由其前一级任务处理装置调度,也可以由自身调度,还可以由下一级任务处理装置调度,具体获取由哪个任务处理装置配置的任务,可视具体情况而定。
其中,每个任务携带各自的入口信息,且每个任务的入口信息中至少包括每个任务的控制参数的地址,以使后续步骤根据该控制参数的地址读取控制参数。该控制参数用于对任务处理过程进行控制。当然,除控制参数的地址外,每个任务的入口信息中还可以包括其他信息,例如,对控制参数的一些描述性信息等等,本实施例对每个任务的入口信息的具体内容不作具体限定。
进一步地,任务处理装置在获取到一至多个任务的入口信息后,可将一至多个任务的入口信息缓存至如图2所示的任务输入模块的存储介质中,存储介质具体可为只读寄存器等等,本实施例不对具体的存储介质进行限定。
步骤302:在一至多个任务中选定被调度的任务;
具体地,在一至多个任务中选定被调度的任务时,选取方式有多种,例如,可以随机选取,也可以按照任务被调度的次数进行选取,还可以在选定被调度的任务之前,对多个任务设置优先级,进而依据优先级对多个任务依次进行调度。设置优先级时,可按照每个任务被调度的频率进行设定,例如,假设以符号A和B分别对任务处理装置的两个任务进行标识。如果任务A的被调度频率高于任务B,则任务A的优先级设置为高于任务B,除此之外,还可以采用其他设置方式,例如,按照任务的复杂程度和时限进行设置等等,本实施例对为任务设置优先级的具体方式及选取被调度的任务的方式不作具体限定。
步骤303:根据被调度的任务的入口信息中的控制参数的地址获取被调度的任务的控制参数,该控制参数中包括数据输入地址、数据输出地址及下一级任务处理装置的入口地址;
具体地,根据上述步骤302选定被调度的任务后,可在上述步骤301任务处理装置获取的一至多个任务的入口信息中获取被调度的任务的入口信息,然后从被调度的任务的入口信息中获取被调度的任务的控制参数的地址,之后再根据被调度的任务的控制参数的地址获取被调度的任务的控制参数。该控制参数中除了包括数据输入地址、数据输出地址及下一级任务处理装置的入口地址外,还可包含其他信息,本实施例对控制参数中所包含的信息不作具体限定。
步骤304:根据控制参数中的数据输入地址输入被调度的任务的数据;
针对该步骤,每个任务对应各自的数据,而每个任务的数据将被预先存储在对应的存储空间中,通过控制参数可控制数据的输入。例如,图2所示的存储器将存储任务处理装置需处理的全部任务的数据及每个任务的数据与各自任务的对应关系。当根据上述步骤303获取到被调度的任务的控制参数后,通过读取被调度的任务的控制参数中的数据输入地址,可根据被调度的任务与被调度的任务的数据之间的对应关系,从存储器中获取被调度的任务的数据,并根据被调度的任务的控制参数中的数据输入地址将被调度的任务的数据输入至如图2所示的数据输入单元中。
步骤305:根据被调度的任务的控制参数对被调度的任务进行处理得到处理结果,输出被调度的任务的处理结果;
具体地,将被调度的任务的数据输入到如图2的数据输入单元后,便可将该数据发送至处理单元进行处理,处理单元处理完毕后,将被调度的任务的处理结果输出至如图2所示的数据输出单元中。其中,处理单元具体可为加速器或者DSP(Digital SignalProcessor,数字信号处理器)或者CPU(Central Processing Unit,中央处理器)。对被调度的任务的数据进行处理的具体实现方式可依据现有处理方式实现,本实施例对此不作具体限定。
通过上述步骤实现在任务处理装置内部对任务进行调度处理后,在保证任务处理的速度和效率的前提下,为了降低功耗,本实施例提供的方法在根据被调度的任务的控制参数对被调度的任务进行处理得到处理结果之后,还包括:
如果任务处理装置进入空闲状态,则根据任务处理装置的类型对任务处理装置进行低功耗管理。
其中,根据任务处理装置的类型对任务处理装置进行低功耗管理,包括关闭对应的电源、时钟,以及Memory(存储器)睡眠等,具体管理过程包括但不限于:
如果任务处理装置需要保存静态控制信息,则控制除去如图2所示的电源管理单元、任务输入单元及中断输入单元以外的其他部分进入低功耗状态;
如果任务处理装置不需要保存静态控制信息,则关闭除去如图2所示的电源管理单元、任务输入单元及中断输入单元以外的其他部分的电源;
如果需要任务处理装置响应速度达到预设阈值,则关闭除去如图2所示的电源管理单元以外的其他部分的时钟,其中,预设阈值的大小可依据具体情况而定,例如,可以为1毫秒,2毫秒,或是其他大小,本实施例不对预设阈值的大小进行具体限定。本实施例提供的方法中,电源管理的调度响应速度快,是几个时钟周期的精度,特别适合无线通讯物理层处理这种短周期忙闲循环的场景。
进一步地,无论采用上述哪种方式对任务处理装置进行电源管理操作,如果任务处理装置处于空闲状态,则有任务处理时,可根据任务处理装置的对外接口信号的变化触发打开时钟信号,并在预设时间内打开电源,以促使任务处理装置进入工作状态。
可选地,如果任务处理装置在对被调度的任务进行处理时,收到前一级任务处理装置发送的中断通知,则根据中断通知中断对被调度的任务的处理。
可选地,如果任务处理装置对被调度的任务处理完毕后,无需再进行后续处理,则输出处理结果后,由图2所示的消息输出单元向下一级任务处理装置发送任务启动控制消息,以调度下一级任务处理装置对被调度的任务进行处理;或者,由图2所示的中断输出单元向下一级任务处理装置发送中断通知,以调度下一级任务处理装置对被调度的任务进行中断处理。如果任务处理装置对被调度的任务处理完毕后,还需后续任务处理装置对被调度的任务进行进一步的处理,则执行下述步骤306;
需要说明的是,如果任务处理装置同时要由中断输出单元输出中断通知、消息输出单元输出下一级任务处理装置的任务启动控制消息和数据输出单元输出被调度的任务的处理结果,则可由一致性管理单元对数据输出单元输出处理结果、消息输出单元输出任务启动控制消息及中断输出单元输出中断通知的顺序进行维护,管理处理结果输出、任务启动控制消息输出、中断通知输出三个事件在系统中的顺序,保证各单元间的系统事件顺序,从而保证分布式调度时单元间的处理顺序。例如,如果3部分同时输出,通常顺序为:任务处理装置的下一级任务处理装置收到中断时可以读取到控制消息,当收到控制消息时可以读取到前一级任务处理装置的数据输出。
步骤306:调度下一级任务处理装置对被调度的任务进行处理。
针对该步骤,调度下一级任务处理装置对被调度的任务进行处理的方式,具体包括但不限于:
根据控制参数中的下一级任务处理装置的入口地址调度下一级任务处理装置对被调度的任务进行处理。其中,下一级任务处理装置与任务处理装置相同,或者为任务处理装置之外的其他任务处理装置。也就是说,任务处理装置可以调度其他任务处理装置,也可以再次调度自身,实现对任务的迭代处理。无论任务处理装置调度的下一级任务处理装置具体为哪个任务处理装置,下一级任务处理装置处理任务的流程与任务处理装置处理任务的方式原理相同,此处不再一一赘述。
具体地,为了对本实施例提供的方法进行具体地描述,参见图4,本实施例以无线LTE(Long Term Evolution,长期演进)和UMTS(Universal Mobile TelecommunicationsSystem,通用移动通信系统)双模物理层上行处理为例进行说明:
假设处理完毕一个任务要分别经过FFT(Fast Fourier Transform,快速傅里叶变换)单元进行FFT处理、信道估计单元进行信道估计处理、MIMO(Multiple Input MultipleOutput,多输入多输出)单元进行MIMO处理、IDFT(Inverse Discrete Fourier Transform,离散傅里叶逆变换)单元进行IDFT处理、解交织单元进行解交织处理、解速率匹配单元进行解速率匹配处理及译码单元进行译码处理,则当FFT单元对被调度的任务进行快速傅里叶变换后,将根据该任务的控制参数中的信道估计单元的入口地址调度信道估计单元对该任务继续进行处理,如果此时信道估计单元处于工作状态,则缓存被调度的任务到任务队列,如果处于空闲状态(如处于低功耗状态),则恢复到正常状态并处理被调度的任务。处理被调度的任务时,直接接收FFT单元发送的该任务的入口信息,并根据该任务的入口信息中的控制参数地址获取控制参数,然后根据控制参数中的数据输入地址输入该任务的数据,并根据输入的数据对该任务进行处理,最后根据控制参数中的数据输出地址输出该任务的处理结果,同时根据该任务的控制参数中的MIMO单元的入口地址调度MIMO单元对该任务继续进行处理。类似地,后续每个处理单元在接收到前级处理单元发送的任务入口信息后,均将采用与前一级处理单元的相同方式对该任务进行进一步的处理。在译码单元对该任务处理完毕后,可调度速率匹配单元进行速率匹配处理,然后由速率匹配单元调度交织单元进行交织处理,最终由交织单元调度DFT单元进行DFT处理后,由DFT单元调度前级MIMO单元对该任务再次进行处理。其中,调度前级MIMO单元的次数,可视具体情况而定,本实施对此不作具体限定。
需要说明的是,各个处理单元可按照周期被循环调度。其中,周期的大小可为1毫秒,或者其他数值,本实施例对预设周期的大小不作具体限定,可视具体情况而定。当处理单个载扇的任务时,部分处理单元被调度的时序可如图5所示,其中,FFT单元在一个周期内被调度12至14次,对被调度的任务进行相应处理后,调度信道估计单元;信道估计单元在一个周期内被调度2次,并在每次被调度并对被调度的任务进行相应处理后,调度12次MIMO单元;MIMO单元在每次被调度并对被调度的任务进行相应处理后,调度IDFT单元。当处理多个载扇的任务时,每个处理单元在一个预设周期内被调度的次数,可依据载扇的个数及载扇的天线个数确定。
本实施例提供的方法,通过任务处理装置从配置的一至多个任务中选定被调度的任务后,根据被调度的任务的控制参数实时处理被调度的任务,实现了每个任务处理装置可以独立进行任务处理;另外,通过任务处理装置之间的相互调度,而无需再通过独立的调度器进行集中调度,实现了任务处理的分布式调度,因此具有调度速度快、任务处理效率高的特点。另外,根据任务处理装置的状态和类型对任务处理装置进行电源管理,从而降低了任务处理装置的能耗。
实施例三
本发明实施例提供了一种任务处理装置,以实现实施例一或实施例二提供的任务处理方法,参见图6,该任务处理装置包括:
任务输入单元601,用于获取配置的一至多个任务;该任务输入单元601可以缓存一定数量的任务;关于缓存的任务的数量本实施例不作具体限定。
调度单元602,用于在一至多个任务中选定被调度的任务;
处理单元603,用于根据调度单元602选定的被调度的任务的控制参数对被调度的任务进行处理得到处理结果;
数据输出单元604,用于输出处理单元603处理被调度的任务得到的处理结果。
调度单元602,还用于根据被调度的任务的控制参数调度下一级任务处理装置对被调度的任务继续进行处理;
其中,下一级任务处理装置与该任务处理装置相同,或者为该任务处理装置之外的其他任务处理装置。
进一步地,参见图7,该任务处理装置,还包括:
电源管理单元605,用于在任务处理装置处于空闲状态时,根据对外接口信号的变化触发打开时钟信号,并在预设时间内打开电源,以促使任务处理装置进入工作状态;
电源管理单元605,还用于在任务处理装置进入空闲状态时,根据任务处理装置的类型对任务处理装置进行低功耗管理。
进一步地,任务输入单元601还用于获取一至多个任务的入口信息,该入口信息中至少包括每个任务的控制参数的地址;
进一步地,参见图7,该任务处理装置,还包括:
任务解析单元606,用于根据被调度的任务的入口信息中的控制参数的地址获取被调度的任务的控制参数,控制参数中包括数据输入地址及数据输出地址;
数据输入单元607,用于根据任务解析单元606获取到的控制参数中的数据输入地址输入被调度的任务的数据;
处理单元603,具体用于根据数据输入单元607输入的数据对被调度的任务进行处理得到处理结果;
数据输出单元604,具体用于根据任务解析单元606获取到的控制参数中的数据输出地址输出处理单元603处理被调度的任务得到的处理结果。
进一步地,任务解析单元606获取到的被调度的任务的控制参数中还包括下一级任务处理装置的入口地址;
调度单元602,具体用于根据任务解析单元606获取到的控制参数中的下一级任务处理装置的入口地址调度下一级任务处理装置对被调度的任务进行处理。
进一步地,参见图7,该任务处理装置还包括:
消息输出单元608,用于向下一级任务处理装置发送任务启动控制消息,以调度下一级任务处理装置对被调度的任务进行处理;或者,
中断输出单元609,用于向下一级任务处理装置发送中断通知,以调度下一级任务处理装置对被调度的任务进行中断处理。
其中,消息输出单元608通过向下一级任务处理装置发送任务启动控制消息,以调度下一级任务处理装置对被调度的任务进行处理,从而可以实现分布式调度。
进一步地,参见图7,该任务处理装置还包括:
一致性管理单元610,用于对数据输出单元604输出处理结果、消息输出单元608输出任务启动控制消息及中断输出单元609输出中断通知的顺序进行维护。
进一步地,参见图7,该任务处理装置还包括:
中断输入单元611,用于输入前一级任务处理装置发送的中断通知,前一级任务处理装置与该任务处理装置相同,或者为该任务处理装置之外的其他任务处理装置;
处理单元603,还用于根据中断输入单元输入的中断通知中断对被调度的任务的处理。
综上,本发明实施例提供的装置,通过任务处理装置从配置的一至多个任务中选定被调度的任务后,根据被调度的任务的控制参数实时处理被调度的任务,实现了每个任务处理装置可以独立进行任务处理;另外,通过任务处理装置之间的相互调度,而无需再通过独立的调度器进行集中调度,实现了任务处理的分布式调度,因此具有调度速度快、任务处理效率高的特点。另外,根据任务处理装置的状态和类型对任务处理装置进行电源管理,从而降低了任务处理装置的能耗。
需要说明的是:上述实施例提供的任务处理装置在进行任务处理时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将装置的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。另外,上述实施例提供的任务处理装置与任务处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种任务处理装置,其特征在于,所述任务处理装置包括:
任务输入单元,用于获取配置的一至多个任务;
调度单元,用于在所述一至多个任务中选定被调度的任务;
处理单元,用于根据所述调度单元选定的被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果;
数据输出单元,用于输出所述处理单元处理所述被调度的任务得到的处理结果;
所述调度单元,还用于根据所述被调度的任务的控制参数调度下一级任务处理装置对所述被调度的任务继续进行处理;
其中,所述下一级任务处理装置与所述任务处理装置相同,或者为所述任务处理装置之外的其他任务处理装置;
所述任务处理装置,还包括:
电源管理单元,用于在所述任务处理装置处于空闲状态时,根据对外接口信号的变化触发打开时钟信号,并在预设时间内打开电源,以促使所述任务处理装置进入工作状态;
所述电源管理单元,还用于在所述任务处理装置进入空闲状态时,根据所述任务处理装置的类型对所述任务处理装置进行低功耗管理;
其中,所述任务输入单元还用于获取所述一至多个任务的入口信息,所述入口信息中至少包括每个任务的控制参数的地址;
所述任务处理装置,还包括:
任务解析单元,用于根据所述被调度的任务的入口信息中的控制参数的地址获取所述被调度的任务的控制参数,所述控制参数中包括数据输入地址及数据输出地址;
数据输入单元,用于根据所述任务解析单元获取到的控制参数中的数据输入地址输入所述被调度的任务的数据;
所述处理单元,具体用于根据所述数据输入单元输入的数据对所述被调度的任务进行处理得到处理结果;
所述数据输出单元,具体用于根据所述任务解析单元获取到的控制参数中的数据输出地址输出所述处理单元处理所述被调度的任务得到的处理结果。
2.根据权利要求1所述的任务处理装置,其特征在于,所述任务解析单元获取到的所述被调度的任务的控制参数中还包括所述下一级任务处理装置的入口地址;
所述调度单元,具体用于根据所述任务解析单元获取到的控制参数中的下一级任务处理装置的入口地址调度所述下一级任务处理装置对所述被调度的任务进行处理。
3.根据权利要求2所述的任务处理装置,其特征在于,所述任务处理装置还包括:
消息输出单元,用于向所述下一级任务处理装置发送任务启动控制消息,以调度所述下一级任务处理装置对所述被调度的任务进行处理;或者,
中断输出单元,用于向所述下一级任务处理装置发送中断通知,以调度所述下一级任务处理装置对所述被调度的任务进行中断处理。
4.根据权利要求3所述的任务处理装置,其特征在于,所述任务处理装置还包括:
一致性管理单元,用于对所述数据输出单元输出处理结果、所述消息输出单元输出任务启动控制消息及所述中断输出单元输出中断通知的顺序进行维护。
5.根据权利要求1至4中任一权利要求所述的任务处理装置,其特征在于,所述任务处理装置还包括:
中断输入单元,用于输入前一级任务处理装置发送的中断通知,所述前一级任务处理装置与所述任务处理装置相同,或者为所述任务处理装置之外的其他任务处理装置;
所述处理单元,还用于根据所述中断输入单元输入的中断通知中断对所述被调度的任务的处理。
6.一种任务处理方法,其特征在于,所述方法包括:
任务处理装置获取配置的一至多个任务,并在所述一至多个任务中选定被调度的任务;
根据所述被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果,输出所述被调度的任务的处理结果,并根据所述被调度的任务的控制参数调度下一级任务处理装置对所述被调度的任务继续进行处理;
其中,所述下一级任务处理装置与所述任务处理装置相同,或者为所述任务处理装置之外的其他任务处理装置;
所述任务处理装置获取配置的一至多个任务之前,还包括:
如果所述任务处理装置处于空闲状态,则根据对外接口信号的变化触发打开时钟信号,并在预设时间内打开电源,以促使所述任务处理装置进入工作状态;
所述根据所述被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果之后,还包括:
如果所述任务处理装置进入空闲状态,则根据所述任务处理装置的类型对所述任务处理装置进行低功耗管理;
其中,所述一至多个任务的入口信息中至少包括每个任务的控制参数的地址;所述根据所述被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果之前,还包括:
根据所述被调度的任务的入口信息中的控制参数的地址获取所述被调度的任务的控制参数,所述控制参数中包括数据输入地址及数据输出地址;
根据所述控制参数中的数据输入地址输入所述被调度的任务的数据;
所述根据所述被调度的任务的控制参数对所述被调度的任务进行处理得到处理结果,输出所述被调度的任务的处理结果,具体包括:
根据输入的所述被调度的任务的数据对所述被调度的任务进行处理得到处理结果,并根据所述控制参数中的数据输出地址输出所述被调度的任务的处理结果。
7.根据权利要求6所述的方法,其特征在于,所述被调度的任务的控制参数中还包括所述下一级任务处理装置的入口地址;
所述调度下一级任务处理装置对所述被调度的任务进行处理,具体包括:
根据所述控制参数中的下一级任务处理装置的入口地址调度所述下一级任务处理装置对所述被调度的任务进行处理。
8.根据权利要求7所述的方法,其特征在于,所述根据所述控制参数中的下一级任务处理装置的入口地址调度所述下一级任务处理装置对所述被调度的任务进行处理之后,还包括:
向所述下一级任务处理装置发送任务启动控制消息,以调度所述下一级任务处理装置对所述被调度的任务进行处理;或者,
向所述下一级任务处理装置发送中断通知,以调度所述下一级任务处理装置对所述被调度的任务进行中断处理。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
对输出处理结果、输出任务启动控制消息及中断通知的顺序进行维护。
10.根据权利要求6至9中任一权利要求所述的方法,其特征在于,所述方法还包括:
输入前一级任务处理装置发送的中断通知,根据所述中断通知中断对所述被调度的任务的处理;
其中,所述前一级任务处理装置与所述任务处理装置相同,或者为所述任务处理装置之外的其他任务处理装置。
CN201210520190.0A 2012-12-06 2012-12-06 任务处理装置及方法 Active CN103064736B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201210520190.0A CN103064736B (zh) 2012-12-06 2012-12-06 任务处理装置及方法
US14/096,398 US9519338B2 (en) 2012-12-06 2013-12-04 Task processing apparatus and method including scheduling current and next-level task processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210520190.0A CN103064736B (zh) 2012-12-06 2012-12-06 任务处理装置及方法

Publications (2)

Publication Number Publication Date
CN103064736A CN103064736A (zh) 2013-04-24
CN103064736B true CN103064736B (zh) 2017-02-22

Family

ID=48107369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210520190.0A Active CN103064736B (zh) 2012-12-06 2012-12-06 任务处理装置及方法

Country Status (2)

Country Link
US (1) US9519338B2 (zh)
CN (1) CN103064736B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013202774A1 (de) * 2013-02-20 2014-08-21 Robert Bosch Gmbh Vorrichtung, Verfahren und System zum Steuern eines Prozessors
CN103353851A (zh) * 2013-07-01 2013-10-16 华为技术有限公司 一种管理任务的方法和设备
CN103778011B (zh) * 2014-01-21 2017-02-08 国家电网公司 一种电力系统中服务平台任务公平随机调度方法
US10856220B2 (en) * 2015-12-21 2020-12-01 Apple Inc. Energy-efficient signal processing
CN109144696B (zh) * 2018-08-30 2021-08-10 百度在线网络技术(北京)有限公司 一种任务调度方法、装置、电子设备及存储介质
CN109284180B (zh) * 2018-08-30 2021-06-18 百度在线网络技术(北京)有限公司 一种任务调度方法、装置、电子设备及存储介质
CN109558231A (zh) * 2018-11-26 2019-04-02 广州虎牙信息科技有限公司 分布式任务调度方法及计算机设备
CN113254181B (zh) * 2021-06-07 2022-03-18 中汽创智科技有限公司 一种自适应调度方法及系统
CN113645064B (zh) * 2021-07-16 2023-04-07 北京达佳互联信息技术有限公司 任务下发方法、装置、电子设备及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001065774A1 (en) * 2000-03-01 2001-09-07 Integrated Telecom Express, Inc. Scaleable architecture for multiple-port, system-on-chip adsl communications systems
US20020073129A1 (en) * 2000-12-04 2002-06-13 Yu-Chung Wang Integrated multi-component scheduler for operating systems
US8275976B2 (en) * 2005-08-29 2012-09-25 The Invention Science Fund I, Llc Hierarchical instruction scheduler facilitating instruction replay
US8875142B2 (en) * 2009-02-11 2014-10-28 Hewlett-Packard Development Company, L.P. Job scheduling on a multiprocessing system based on reliability and performance rankings of processors and weighted effect of detected errors
KR20120017294A (ko) * 2010-08-18 2012-02-28 삼성전자주식회사 어플리케이션을 효율적으로 처리하는 스케쥴링 시스템 및 스케쥴링 방법
WO2013107012A1 (zh) * 2012-01-18 2013-07-25 华为技术有限公司 分布式计算任务处理系统和任务处理方法

Also Published As

Publication number Publication date
CN103064736A (zh) 2013-04-24
US20140173609A1 (en) 2014-06-19
US9519338B2 (en) 2016-12-13

Similar Documents

Publication Publication Date Title
CN103064736B (zh) 任务处理装置及方法
CN104794100B (zh) 基于片上网络的异构多核处理系统
CN104899182B (zh) 一种支持可变分块的矩阵乘加速方法
US7353516B2 (en) Data flow control for adaptive integrated circuitry
US8296764B2 (en) Internal synchronization control for adaptive integrated circuitry
Li Computation offloading strategy optimization with multiple heterogeneous servers in mobile edge computing
US9703595B2 (en) Multi-core system with central transaction control
US8904199B2 (en) Apparatus and method for controlling power related parameters by core unit according to detailed status information of the core and application for executing
CN106503791A (zh) 用于有效神经网络部署的系统和方法
CN107491346A (zh) 一种应用的任务处理方法、装置及系统
CN106227591B (zh) 在异构多核片上系统上进行无线通信调度的方法和装置
CN108710535A (zh) 一种基于智能处理器的任务调度系统
CN110427256A (zh) 基于优先级的作业调度优化方法、设备、存储介质及装置
CN105183698A (zh) 一种基于多核dsp的控制处理系统和方法
US20170097854A1 (en) Task placement for related tasks in a cluster based multi-core system
CN104424156A (zh) 处理器的核处理方法、装置及终端
CN110532205A (zh) 数据传输方法、装置、计算机设备和计算机可读存储介质
CN106572500B (zh) 一种c-ran中硬件加速器的调度方法
CN105677582A (zh) 基于可重构系统配置多模式传输的可控缓存实现系统
CN107659509A (zh) 控制应用流量使用方法、装置、可读存储介质及终端设备
CN110471747A (zh) 一种dma多通道的调度使用方法、装置及终端设备
CN104424142B (zh) 一种多核处理器系统中访问共享资源的方法与装置
CN108874548A (zh) 数据处理调度方法、装置、计算机设备和数据处理系统
Ye et al. Intelligent hierarchical NOMA-based network slicing in cell-free RAN for 6G systems
CN115981893A (zh) 消息队列任务处理方法、装置、服务器及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant