专利名称:一种嵌入式多微控制器核开关链结构及其工作方法
技术领域:
本发明涉及片上芯片系统领域,尤其涉及一种嵌入式多微控制器核开关链结构及其工作方法。
背景技术:
多内核是指在一枚处理器中集成两个或多个完整的计算引擎(内核)。多核技术的开发仅仅提高单核芯片的速度会产生过多热量且无法带来相应的性能改善,先前的处理器产品就是如此。在先前产品中以那种速率工作,处理器产生的热量很快会超过太阳表面。即便是没有热量问题,其性价比也令人难以接受,速度稍快的处理器价格要高很多。如图I所示,当一个单核提高频率工作(提高工作速度)的情况下,当执行同样任务的时候,功耗会大幅增加但是性能却没有得到很大的提高。但是如果换成双核去执行同 一个任务的时候频率减少,功耗没什么变化,但是性能一百万次指令每秒(MIPS)却有极大的提高。但当制造工艺在不断的缩小至40nm, 22nm, 14nm, 9nm,甚至更小的时候,器件漏电流会不断增加,漏电功耗会大于总能量消耗的50%以上。在此基础上,如果用到双核或者多核的时候,能量效率(动态能量/(动态能量+漏电能量))会大大降低。这也就意味着,如果多核芯片是由电池供电的话,电池能量的有效利用率就会大大减少,即电池的大多能量被芯片的漏电能量给消耗了。以现有技术做个比较,如表I所示,当一个单核以频率F工作完成两个相同任务的时候,花掉时间T,所耗动态能量Ed,且所耗漏电能量为Elek,其中假设在超深亚微米工艺下,动态功耗占总功耗的40 %,漏电功耗占总功率的60 %,功耗对时间的积分是能量,相应的动态能量占所耗总能量的40%,漏电能量占所耗总能量的60%,即能量效率为Ed/(Ed+Elek) =40%。当两个核工作完成同样两个任务的时候,设置核的工作频率为(l/n)F,所以双核都开启完成所需任务的时间为nT/2,又因为动态功耗正比于cv2f (其中c为电容负载,V为芯片工作电压,f是芯片工作频率),所以双核工作所耗动态功耗为2*cv2 (1/n) F,也就是所耗动态能量为Ed(能量为功耗乘以时间),与单核所耗动态能量一样,漏电能量消耗则为n*Elek,总能量消耗为Ed加上n*Elek,能量效率为Ed/ (Ed+n*Elek),假设η等于2,能量效率就为25%。也就是说,在超深亚微米工艺下,当双核以原来频率的1/2去处理同样事情的时候,所耗动态能量不变,性能(MIPS)也不变,但漏电能量消耗翻倍,导致能量效率几乎减少一半。表I单核与双核能量效率对比表格
频率运行时间动态能量消耗漏电能量消耗总能量消耗能量效率~单核 FTEdElekEt40%
欢核 1/2F TEd2*Elek1.6*Et25%
从这组数据中可以得出,在超深亚微米制造工艺下,随着同时间段内开启更多核去处理多任务的时候,导致的结果就是功耗效率的进一步降低,换而言之,随着超深亚微米工艺越往小尺寸发展,多核同时开启工作能量效率也将进一步下降,这就意味着能源利用率越来越低。
发明内容
本发明克服了在超深亚微米工艺下多核工作能量效率不断下降的缺陷,提出了一种嵌入式多微控制器核开关链结构及其工作方法。本发明提出了一种嵌入式多微控制器核开关链结构,包括至少两个微控制器核,其处理多微控制器内核系统中的数据; 所述微控制器核根据静态漏电流大小排列,所述静态漏电流越小的微控制器核顺序越靠前;所述微控制器核之间串行连接。 其中,所述微控制器核的静态漏电流大小通过所述微控制器核裸片测试得到。其中,所述嵌入式多微控制器核开关链结构适用于超深亚微米工艺节点。本发明还提出了一种嵌入式多微控制器核开关链结构的工作方法,包括优先级判断操作、微处理器核状态判断操作、唤醒微处理器核操作、关断微处理器核操作。其中,所述优先级判断操作包括步骤Al :多微控制器内核系统中每当出现中断事件、异常事件或任务时,所述多微控制器内核系统判断所述中断事件、异常事件或任务的优先级;步骤A2 :若所述优先级为最高且亟待处理,所述多微控制器内核系统执行所述唤醒微处理器核操作;否则,所述多微控制器内核系统执行所述微处理器核状态判断操作。其中,所述微处理器核状态判断操作包括步骤BI :当出现中断事件、异常事件或任务时,所述多微控制器内核系统判断所述多微控制器内核系统中的多个所述微处理器核中是否存在至少一个内核处于上电且不繁忙工作状态;步骤B2 :若存在,所述多微控制器内核系统将所述中断事件、异常事件或任务存入系统等待列表中,等待处理;若不存在,则执行唤醒微处理器核操作。其中,所述唤醒微处理器核操作包括步骤C :所述多微控制器内核系统唤醒所述微处理器核排列顺序上第一个关断的微处理器核处理所述中断事件、异常事件或任务。其中,当前微处理器核处理完中断事件、异常事件或任务后执行所述关断微处理器核操作;所述关断微处理器核操作包括步骤Dl :所述多微控制器内核系统判断所述系统等待列表是否为空;步骤D2 :若所述系统等待列表为空,所述多微控制器内核系统则关断当前所述微处理器核;若不为空,则执行步骤D3 ;步骤D3 :所述多微控制器内核系统判断除所述当前微处理器外其他微处理器是否有处于上电且不繁忙工作状态;步骤D4 :若结果为是,则关断所述当前微处理器核;若结果为否,则执行步骤D5 ;步骤D5 :所述多微控制器内核系统判断在所述当前微处理器核排列顺序之前是否存在其他微处理器核处于关断状态;步骤D6 :若存在,则所述多微控制器内核系统关断所述当前微处理器核并执行所述唤醒微处理器核操作;若不存在,则保持所述当前微处理器核上电状态,由所述当前微处理器核处理所述系统等待列表中的中断事件、异常事件或任务。本发明提出一种新的在超深亚微米工艺下基于极高能量效率的嵌入式多微控制器核结构,可以在超深亚微米工艺下,且有多核同时开启工作的情况下,大大的提高能量效率,解决了在超深亚微米工艺下多核同时开启工作时漏电能量消耗过大的问题,从而使电池等能源有效利用率得到大大的提闻。
图I为现有技术中单核与双核的性能和功耗比较图。图2为本发明嵌入式多微控制器核开关链结构示意图。
·
图3为本实施例中各标志位的电路图。图4为优先级判断操作的流程图。图5为微处理器核状态判断操作的流程图。图6为关断微处理器核操作的流程图。图7为本实施例的开关链结构完整流程示意图。
具体实施例方式结合以下具体实施例和附图,对本发明作进一步的详细说明。实施本发明的过程、条件、实验方法等,除以下专门提及的内容之外,均为本领域的普遍知识和公知常识,本发明没有特别限制内容。表2显示的是一个基于ARM内核典型的动态指令的使用率。在所有的指令中,数据移动的动态使用率为43%,控制流为23%,其他的一些如,算术操作,比较,逻辑操作之类的指令占到动态使用率的34%,算术逻辑单元(ALU)是计算机中执行各种算术和逻辑运算操作的部件。运算器的基本操作包括加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、比较和传送等操作,亦称算术逻辑部件(ALU)。可见,在ARM内核中,ALU指令的动态使用率只占数据移动和控制流指令总和的一半。因为ALU指令的操作会涉及到大量逻辑门的工作,所以动态功耗会远远大于数据移动和控制流指令所消耗的动态功耗,对于基于ARM内核的芯片来说,只有在34%的事件里,即1/3的时间内,其动态功耗才能达到峰值,在其它2/3时间内,ARM ALU都处在静态状态,只有漏电能量的消耗。表2基于ARM内核典型的动态指令的使用率
权利要求
1.一种嵌入式多微控制器核开关链结构,其特征在于,包括 至少两个微控制器核,其处理多微控制器内核系统中的数据; 所述微控制器核根据静态漏电流大小排列,所述静态漏电流越小的微控制器核顺序越靠前;所述微控制器核之间串行连接。
2.如权利要求I所述的嵌入式多微控制器核开关链结构,其特征在于,所述微控制器核的静态漏电流大小通过所述微控制器核裸片测试得到。
3.如权利要求I所述的嵌入式多微控制器核开关链结构,其特征在于,所述嵌入式多微控制器核开关链结构适用于超深亚微米工艺节点。
4.一种嵌入式多微控制器核开关链结构的工作方法,其特征在于,包括优先级判断操作、微处理器核状态判断操作、唤醒微处理器核操作、关断微处理器核操作。
5.如权利要求4所述嵌入式多微控制器核开关链结构的工作方法,其特征在于,所述优先级判断操作包括 步骤Al :多微控制器内核系统中每当出现中断事件、异常事件或任务时,所述多微控制器内核系统判断所述中断事件、异常事件或任务的优先级; 步骤A2 :若所述优先级为最高且亟待处理,所述多微控制器内核系统执行所述唤醒微处理器核操作;否则,所述多微控制器内核系统执行所述微处理器核状态判断操作。
6.如权利要求4所述嵌入式多微控制器核开关链结构的工作方法,其特征在于,所述微处理器核状态判断操作包括 步骤BI :当出现中断事件、异常事件或任务时,所述多微控制器内核系统判断所述多微控制器内核系统中的多个所述微处理器核中是否存在至少一个内核处于上电且不繁忙工作状态; 步骤B2 :若存在,所述多微控制器内核系统将所述中断事件、异常事件或任务存入系统等待列表中,等待处理;若不存在,则执行唤醒微处理器核操作。
7.如权利要求4所述嵌入式多微控制器核开关链结构的工作方法,其特征在于,所述唤醒微处理器核操作包括 步骤C :所述多微控制器内核系统唤醒所述微处理器核排列顺序上第一个关断的微处理器核处理所述中断事件、异常事件或任务。
8.如权利要求4所述嵌入式多微控制器核开关链结构的工作方法,其特征在于,当前微处理器核处理完中断事件、异常事件或任务后执行所述关断微处理器核操作;所述关断微处理器核操作包括 步骤Dl :所述多微控制器内核系统判断所述系统等待列表是否为空; 步骤D2 :若所述系统等待列表为空,所述多微控制器内核系统则关断所述当前微处理器核;若不为空,则执行步骤D3 ; 步骤D3 :所述多微控制器内核系统判断除所述当前微处理器外其他微处理器是否有处于上电且不繁忙工作状态; 步骤D4 :若结果为是,则关断所述当前微处理器核;若结果为否,则执行步骤D5 ; 步骤D5 :所述多微控制器内核系统判断在所述当前微处理器核排列顺序之前是否存在其他微处理器核处于关断状态; 步骤D6 :若存在,则所述多微控制器内核系统关断所述当前微处理器核并执行所述唤醒微处理器核操作;若不存在,则保 持所述当前微处理器核上电状态,由所述当前微处理器核处理所述系统等待列表中的中断事件、异常事件或任务。
全文摘要
本发明公开了一种嵌入式多微控制器核开关链结构,包括至少两个微控制器核,其处理多微控制器内核系统中的数据;所述微控制器核根据静态漏电流大小排列,所述静态漏电流越小的微控制器核顺序越靠前;所述微控制器核之间串行连接。本发明还公开了一种嵌入式多微控制器核开关链结构的工作方法。本发明可以在超深亚微米工艺下提高能量效率,使电池等能源有效利用率得到提高。
文档编号G06F9/50GK102880511SQ20121041075
公开日2013年1月16日 申请日期2012年10月24日 优先权日2012年10月24日
发明者景蔚亮, 陈邦明 申请人:上海新储集成电路有限公司