支持多操作系统并行的松散耦合异质多核处理系统的制作方法

文档序号:6378313阅读:238来源:国知局
专利名称:支持多操作系统并行的松散耦合异质多核处理系统的制作方法
技术领域
本发明涉及计算机技术领域,特别涉及一种支持多操作系统并行的松散耦合异质多核处理系统。
背景技术
随着以智能手机为代表的移动智能终端的迅速崛起和普及,越来越多的个性化应用开始出现在终端平台上,如私人信息管理、社交网络、多媒体服务等,而不断增加的应用需求又进一步推动移动终端的计算性能向着更强更快的方向发展。然而移动终端上处于活动状态的进程的功耗特性及性能需求等是在很大范围内动态变化的。其中的一些任务,如标准存储卡的数据访问仅仅消耗小于数十毫瓦的功耗,而对于计算密集型(如图像处理)和通信密集型(如通过Wi-Fi进行图像传送)的任务而言,其功耗则通常高达数百毫瓦。同
时作为电池供电的便携式设备,电池技术的发展却一直严重滞后于终端处理器计算能力及存储容量的发展,因此如何在满足应用需求的前提下优化终端的功耗,提高系统的能量利用效率成为产业界和学术界共同面临的一个难题。ARM公司在2011年推出了成为big. LITTLE架构的技术,其通过将双核的高性能处理器Cortex-A15与高能效处理器Cortex_A7集成在同一个SoC内,实现移动终端系统的功耗优化。该技术的核心理念是根据应用需求的不同,选择合适的处理器核来执行合适的任务。作为一种紧致耦合(tightly coupled)的多核处理器设计方案,在该系统中只运行一个操作系统,根据应用的性能需求和系统的功耗需求,系统将任务在高性能处理器核与高能效处理器核之间进行对用户透明的调度,因此在任意时刻,只有一种计算核心在执行运算而另一个核心处于休眠状态来降低整个系统的功耗。作为基于紧致耦合理念的多核处理器架构,cache 一致性等问题的管理使得big.LITTLE方案的实现更为复杂,需要额外的硬件处理模块(模块名为CCI-400)来有效解决这一问题,而这限制了其进一步功耗优化的空间。同时在该方案中,系统只运行一个操作系统(如Android),这就使得其必须通过对操作系统本身进行优化来降低系统的启动时间,这种优化实现的空间是有限的。

发明内容
本发明的目的旨在至少解决所述技术缺陷之一。为此,本发明的目的在于提出一种支持多操作系统并行的松散耦合异质多核处理系统。为达到所述目的,本发明的实施例公开了一种支持多操作系统并行的松散耦合异质多核处理系统,包括包括并行的第一处理器和第二处理器,其中,所述第一处理器的运算能力和功耗均大于所述第二处理器的运算能力和功耗,且所述第一处理器和第二处理器具有独立的操作系统,其中,所述第一处理器具有通用操作系统,所述第二处理器具有嵌入式实时操作系统,所述嵌入式实时操作系统用于加快移动终端的开机加载。
根据本发明实施例的支持多操作系统并行的松散耦合异质多核处理系统可以支持多操作系统并行的松散耦合(loosely coupled)异质多核处理器架构,可以在提高系统能量利用效率的同时,通过率先启动更为简单的嵌入式操作系统来降低移动终端的系统启动时间,进一步提升终端用户的使用体验。在本发明的实施例中,所述第一处理器处于睡眠状态,所述第二处理器处于激活状态,所述第二处理器用于激活所述第一处理器。在本发明的实施例中,所述第二处理用于实现文件存储,维护WIFI通信,显示控制等。在本发明的实施例中,所述第一处理器和第二处理器为独立封装,或者,所述第一处理器和第二处理器基础在一个SOC芯片上。本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。


本发明所述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中·
图I是根据本发明一个实施例的支持多操作系统并行的松散耦合异质多核处理系统的结构图;图2是根据本发明一个实施例的支持多操作系统并行的松散耦合异质多核处理系统的结构图;以及图3是根据本发明一个实施例的支持多操作系统并行的松散耦合异质多核处理系统的工作流程。
具体实施例方式下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。在本发明的描述中,需要理解的是,术语“纵向”、“横向”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底” “内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。在本发明的描述中,需要说明的是,除非另有规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是机械连接或电连接,也可以是两个元件内部的连通,可以是直接相连,也可以通过中间媒介间接相连,对于本领域的普通技术人员而言,可以根据具体情况理解所述术语的具体含义。以下结合附图描述根据本发明实施例的支持多操作系统并行的松散耦合异质多核处理系统。图I是根据本发明一个实施例的支持多操作系统并行的松散耦合异质多核处理系统的结构图。如图I所示,根据本发明实施例的支持多操作系统并行的松散耦合异质多核处理系统100,包括并行的第一处理器110和第二处理器120,其中,第一处理器110的运算能力和功耗均大于第二处理器120的运算能力和功耗,且第一处理器110和第二处理器120具有独立的操作系统,其中,第一处理器110具有通用操作系统,第二处理器120具有嵌入式实时操作系统,嵌入式实时操作系统用于加快移动终端的开机加载。在本发明的一个实施例中,第一处理器110和第二处理器120为独立封装,或者,第一处理器110和第二处理器120基础在一个SOC芯片上。具体地,如图2所示,第一处理器110为“大核”(big core)和第二处理器120为“小核”(small core)。“大核”称之为CPU core,具有更强大的计算能力,同时处于峰值性能时也消耗更多的能量,“小核”称之为MCUcore,计算性能不及CPU core,但其功耗更低,具有更高的能量利用效率。这两种处理器核可以被封装在同一个SoC(System-on-Chip)内的管芯上,当然也可以是分立的两颗芯片。这两种计算内核是松散耦合的,各自独立运行着不同的操作系统,本发明的实施例中,将这种设计定义为异质核设计(uneven core design)。例 如,在MCU core运行较为简单而系统启动时间非常短的嵌入式实时操作系统,在CPU core上则运行功能更为复杂而启动时间也相对较长的通用操作系统。两种计算核心共享一个相同的主存储单元及外围模块,同时二者也会通过中断机制来进行相互通信。由于当前的移动智能终端均是多任务同时处理,与PC—样在启动时需要将这些任务都运行起来,例如如系统初始化、加载系统运行程序并对Flash的文件系统进行保护,以防止断电时对系统中数据的损坏等。这就直接导致终端的启动时间相对较长,目前智能手机的开机时间一般在35秒左右。而本发明的实施例系统通过在MCU core上迅速启动嵌入式实时操作系统可以极大的降低系统的启动时间。该系统对于智能SD卡这种设备而言是十分重要的,例如智能SD卡通过主设备的SD接口上电之后,MCUcore可以立即启动运行在其上的操作系统进而迅速的相应主设备的进一步操作。在一些示例中,第一处理器110处于睡眠状态,第二处理器120处于激活状态,第二处理器120用于激活第一处理器110。由此具有降低系统启动时间的优点。另外,异质核设计的另一个优点在于动态功耗优化。例如,一个基于异质核结构设计的智能SD卡,大部分基本的数据访问处理都是在MCU core上完成的,而CPU core只有在执行一些资源密集型的应用,例如对当前闪存中的图片进行OCR时才会被MCU core唤醒。换言之,绝大部分时间内的基本处理任务,如文件存储、维护Wi-Fi通信、在智能手表上进行显示等都是在能效更高的MCU core上实现的,CPU core则处于睡眠状态,从而达到优化能耗的目的。另外,在本发明的其他示例中,第二处理用于实现文件存储,维护WIFI通信,显示控制等。具体地,本发明实施例的系统中设计取得的系统启动时间和功耗优化并不是以牺牲MCU core的灵活性为代价得到的。在本发明的实施例中,MCU core并不是一个完全的硬件实现(full hardwiredimplementation),而是可以根据不同的具体应用需求进行功能定制的。以智能SD卡上的MCU core为例,其对CPU core的唤醒功能是完全可以配置的,如其可以根据当前闪存中的图片存储量、或者是否具有稳定的Wi-Fi连接或者剩余的电池容量等来决定是否唤醒CPU core进行进一步操作。此外与当前基于cache —致性的紧密耦合多核解决方案不同,本发明的实施例的异质核结构是一种松散耦合的架构,例如两种计算核心之间具有很强的独立性,因此也就不需要开发额外的硬件模块来处理两种核心之间的cache —致性问题。对于可能出现的协同计算问题,可以通过简单的软件处理来有效的解决。这就使得基于本发明设计理念开发的SoC相比于紧致耦合实现方案而言更加简单。如图3所示,是根据本发明一个实施例的支持多操作系统并行的松散耦合异质多核处理系统的工作流程。I、设备初始化在智能SD卡通过SD接口接入到主设备(智能手机、数码相机等)中,首先整个硬件系统复位,MCU core从其ROM中load其系统文件并启动一个轻量的嵌入式实时操作系统,相应主系统发来的基本文件访问类任务。根据用户的具体配置,MCU core控制在CPU core上启动更为通用的操作系统,并控制CPU core进入睡眠状态。2、一般任务处理划分在大部分工作时间里,主设备对智能SD卡的文件访问等基本任务均由MCU core来独立完成,而CPU core在此期间处于休眠状态,从而使整个智能SD卡的功耗开销保持在很低的水平。 3、资源密集型任务处理在接收到主设备发来的计算密集型任务(如对智能SD卡上存储的图片进行编辑、通过Wi-Fi进行流媒体视频传输等)请求时,MCU core可以通过中断等机制将CPU唤醒,并将任务处理转移给CPU core, CPU core在执行完该任务后通过中断机制通知MCU core,并在MCU core的控制下重新进入睡眠状态。根据本发明实施例的支持多操作系统并行的松散耦合异质多核处理系统可以支持多操作系统并行的松散耦合(loosely coupled)异质多核处理器架构,可以在提高系统能量利用效率的同时,通过率先启动更为简单的嵌入式操作系统来降低移动终端的系统启动时间,进一步提升终端用户的使用体验。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对所述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。
权利要求
1.一种支持多操作系统并行的松散耦合异质多核处理系统,其特征在于,包括并行的第一处理器和第二处理器,其中,所述第一处理器的运算能力和功耗均大于所述第二处理器的运算能力和功耗,且所述第一处理器和第二处理器具有独立的操作系统,其中,所述第一处理器具有通用操作系统,所述第二处理器具有嵌入式实时操作系统,所述嵌入式实时操作系统用于加快移动终端的开机加载。
2.如权利要求I所述的支持多操作系统并行的松散耦合异质多核处理系统,其特征在于,所述第一处理器处于睡眠状态,所述第二处理器处于激活状态,所述第二处理器用于激活所述第一处理器。
3.如权利要求I或2所述的支持多操作系统并行的松散耦合异质多核处理系统,其特征在于,所述第二处理用于实现文件存储,维护WIFI通信,显示控制等。
4.如权利要求1-3任一项所述的支持多操作系统并行的松散耦合异质多核处理系统,其特征在于,所述第一处理器和第二处理器为独立封装,或者,所述第一处理器和第二处理器基础在一个SOC芯片上。
全文摘要
本发明提出了一种支持多操作系统并行的松散耦合异质多核处理系统,包括并行的第一处理器和第二处理器,其中,所述第一处理器的运算能力和功耗均大于所述第二处理器的运算能力和功耗,且所述第一处理器和第二处理器具有独立的操作系统,其中,所述第一处理器具有通用操作系统,所述第二处理器具有嵌入式实时操作系统,所述嵌入式实时操作系统用于加快移动终端的开机加载。根据本发明的实施例可以支持多操作系统并行的松散耦合(loosely coupled)异质多核处理器架构,可以在提高系统能量利用效率的同时,通过率先启动更为简单的嵌入式操作系统来降低移动终端的系统启动时间,进一步提升终端用户的使用体验。
文档编号G06F9/48GK102929713SQ20121037786
公开日2013年2月13日 申请日期2012年10月8日 优先权日2012年10月8日
发明者朱文平, 刘雷波, 尹首一, 魏少军, 彭进展, 邓育贤, 王元陶, 宋继强, 陈新中 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1