CN100442203C - 用于片上系统中知识产权核和功能模块的功耗降低方法 - Google Patents
用于片上系统中知识产权核和功能模块的功耗降低方法 Download PDFInfo
- Publication number
- CN100442203C CN100442203C CNB2006100809685A CN200610080968A CN100442203C CN 100442203 C CN100442203 C CN 100442203C CN B2006100809685 A CNB2006100809685 A CN B2006100809685A CN 200610080968 A CN200610080968 A CN 200610080968A CN 100442203 C CN100442203 C CN 100442203C
- Authority
- CN
- China
- Prior art keywords
- functional module
- original
- attitude
- clock
- request
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Power Sources (AREA)
Abstract
本发明公开了一种SoC中各种知识产权核和功能模块的功耗降低方法。包括:a)将原始功能模块的所有状态分为两类——“空闲”态和“工作”态;b)提供一个逻辑电路与所述原始功能模块连接构成新的低功耗功能模块,该逻辑电路完成如下逻辑功能:如果总线没有对原始功能模块的请求,就保持时钟关闭;如果总线有对该原始功能模块的请求,则打开原始功能模块的时钟,原始功能模块进入“工作”态;保持时钟打开,直到原始功能模块处于“空闲”态并且没有总线请求,就关闭原始功能模块时钟并保持关闭,直到总线再次对该功能模块提出请求。本发明降低IP核的动态功耗,同时自动开关该IP核的电源,降低该IP核的漏电功耗。
Description
技术领域
本发明涉及微处理器体系结构和集成电路技术,特别涉及片上系统(System-on-Chip,以下简称SoC)中各种知识产权(Intellectual Property,以下简称IP)核和功能模块的功耗降低方法。
背景技术
众所周知,提高SoC设计效率的关键有赖于IP核的可重复使用。IP核是工程师们研究设计的提炼,主要实现一些常见而且有一定设计难度的功能,这些IP核一般都经过验证,可以使SoC的设计者们不用重复设计便可直接使用这些IP核,从而缩短设计周期和提高系统可靠性。因此,IP核是SoC的基本单位,降低SoC功耗就需要设计低功耗的IP核。
已有的利用门控时钟降低IP核功耗的方法有两种:一种是使用电子设计自动化(Electronics Design Automation,以下简称EDA)工具在IP核中具有自反馈的寄存器前面插入门控单元;另一种是IP核设计者手工在整个模块的时钟信号输入前加入一个可编程的门控单元,用户利用软件开关这个IP核的时钟。已有的技术中第一个方法的缺点是必须使用特定的EDA工具,并会无规律地插入大量的门控单元,对本来就很复杂的后端时钟树设计造成更大的难度,而且当IP核不工作时并没有关闭整个IP核的时钟网络,虽然部分电路会休眠,但功耗降低并不彻底;而已有技术中第二个方法的缺点是不能自动开关IP核的时钟,而是需要用户软件支持,并依赖于用户对IP核使用的监控,也就是说用户需要根据自己对该IP核和功能模块的使用情况,决定其时钟的开启或关闭,因而此种方法效率低下且易出错。比如,IP核时钟实际需要关闭的时候,用户并不一定关闭时钟,因此损失不必要的功耗;而不能关闭时钟的时候,由于用户的疏忽而造成的关闭,将导致系统出现严重错误。
因此,现有技术的不足就需要一种改进的用于SoC中IP核和功能模块的功耗降低方法。
发明内容
本发明的目的是克服已有技术中降低功耗不彻底和容易出错的问题,从而提供一种改进的用于SoC中IP核和功能模块的功耗降低方法。
为了达到上述目的,本发明采取如下技术方案。
一种改进的用于SoC中功能模块的降低功耗的方法,包括:
a)将原始功能模块的所有状态分为两类——“空闲”态和“工作”态,“工作”态即非“空闲”态,“空闲”态即该原始功能模块当前没有进行有效工作的状态;
b)提供一个逻辑电路与所述原始功能模块连接构成新的低功耗功能模块,该逻辑电路完成如下逻辑功能:如果总线没有对原始功能模块的请求,就保持时钟关闭;如果总线有对该原始功能模块的请求,则打开原始功能模块的时钟,原始功能模块进入“工作”态;保持时钟打开,直到原始功能模块处于“空闲”态并且没有总线请求,就关闭原始功能模块时钟并保持关闭,直到总线再次对该功能模块提出请求。
在上述技术方案中,还包括:将所述逻辑电路的供电电源与所述原始功能模块的供电电源隔离,该逻辑电路还实现以下逻辑功能:当且仅当所述原始功能模块处于“空闲”态并且没有总线请求时,关闭原始功能模块的供电电源;否则打开原始功能模块供电电源。
在上述技术方案中,所述步骤a)中,对于在硬件描述语言中有显式的状态机描述的,直接将其“空闲”状态划为一类,其它状态划为“工作态”;对于在硬件描述语言中不是显式的描述所述原始功能模块状态,而是在各个级别的流水线中隐式地表示的,需要对流水线中的有效位寄存器的结果进行编码,完成“空闲”态和“工作”态的划分。
在上述技术方案中,步骤b)中所述逻辑电路包括一个低电平有效的锁存器与一个两输入与门相连接;并且,当时钟为高电平的时候,所述锁存器关闭;当时钟为低电平时,所述锁存器导通,所述与门屏蔽毛刺的传递。
一种改进的用于SoC中IP核的功耗降低方法,包括:
a)将原始IP核的所有状态分为两类——“空闲”态和“工作”态,“工作”态即非“空闲”态,“空闲”态即该IP核当前没有进行有效工作的状态;
b)提供一个逻辑电路与所述原始IP核连接构成新的低功耗IP核,该逻辑电路完成如下逻辑功能:如果总线没有对原始IP核的请求,就保持时钟关闭;如果总线有对该IP核的请求,则打开原始IP核的时钟,原始IP核进入“工作”态;保持时钟打开,直到原始IP核处于“空闲”态并且没有总线请求,就关闭原始IP核时钟并保持关闭,直到总线再次对该IP核提出请求。
在上述技术方案中,还包括:将所述逻辑电路的供电电源与所述原始IP核的供电电源隔离,该逻辑电路还实现以下逻辑功能:当且仅当所述原始IP核处于“空闲”态并且没有总线请求时,关闭原始IP核的供电电源;否则打开原始IP核供电电源。
在上述技术方案中,所述步骤a)中,对于在硬件描述语言中有显式的状态机描述的,直接将其“空闲”状态划为一类,其它状态划为“工作态”;对于在硬件描述语言中不是显式的描述所述原始IP核状态,而是在各个级别的流水线中隐式地表示的,需要对流水线中的有效位寄存器的结果进行编码,完成“空闲”态和“工作”态的划分。
在上述技术方案中,在打开或关闭IP核的时钟时,为了避免可能产生的时钟毛刺(glitch)而导致严重错误,使用一个低电平有效的锁存器(Latch)和一个两输入与门来搭建门控单元;并且,当时钟为高电平的时候,所述锁存器关闭从而屏蔽了毛刺的传递;当时钟为低电平时,所述锁存器导通,所述与门将屏蔽毛刺的传递。与已有技术相比,本发明的优势在于:
本发明通过改进的设计,利用IP核自身工作状态,根据实际应用,实时自动地开关整个IP核的时钟,减少IP核时钟网络的跳变,从而降低IP核的动态功耗;同时自动开关该IP核的电源,在不影响正常工作的前提下降低该IP核的漏电功耗。
附图说明
图1是本发明一实施例对显式的状态描述的原始IP核的降低功耗的示意图;
图2是本发明另一实施例对隐式的状态描述的原始IP核的降低功耗的示意图。
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细描述:
实施例1
如图1所示,本实施例对显式的状态描述的原始IP核的降低功耗的示意图。
步骤a)将原始IP核的所有状态分为两类——“空闲”态和“工作”态,“工作”态即非“空闲”态,“空闲”态即该IP核当前没有进行有效工作的状态。具体如下:
图中,方框内为原始IP核10的工作模型,该原始IP核10的状态有“空闲”、“请求”、“准备”、“运行”、“结束”;处于“空闲”态时,如果总线没有请求,则保持在“空闲”态,如果总线发出请求,则进入“运行”态;图中圆圈表示状态,箭头表示跃迁,指示了状态机的下一个状态。原始IP核10的实际电路中状态由一系列寄存器(时序电路)实现,跃迁由组合电路实现。由于本实施例中的对于在硬件描述语言中有显式的状态机描述,直接将该原始IP核10的状态分为两类——“空闲”态和“工作”态,“工作”态由“空闲”态以外的状态构成。
b)提供一个逻辑电路与所述原始IP核连接构成新的低功耗IP核,该逻辑电路完成如下逻辑功能:如果总线没有对原始IP核的请求,就保持时钟关闭;如果总线有对该IP核的请求,则打开原始IP核的时钟,原始IP核进入“工作”态;保持时钟打开,直到原始IP核处于“空闲”态并且没有总线请求,就关闭原始IP核时钟并保持关闭,直到总线再次对该IP提出请求。
具体如下:
原始IP核10要从外面引入工作时钟,在工作时钟信号进入原始IP核10之前,增加一个逻辑电路11(图中虚线框内),该逻辑电路11包括:
与非门电路12,该与非门电路12的两个输入端分别连接原始IP核10的“空闲”态标志信号和总线无请求的标志信号。
锁存器13,所述与非门电路12的输出端连接到锁存器13的数据输入端,该锁存器13的另一个输入端(时钟输入端)连接工作时钟信号,锁存器13的输出端连接到与门电路14的一个输入端,与门电路14的另一个输入端连接工作时钟信号,与门电路14的输出端连接到原始IP核10为其输入工作时钟信号。
当原始IP核10满足图1中虚线标明的两个条件时关闭该IP核的时钟,否则保持时钟的开启状态,即如果总线没有对原始IP核的请求,就保持时钟关闭;如果总线有对该IP核的请求,则打开原始IP核的时钟,原始IP核进入“工作”态;保持时钟打开,直到原始IP核处于“空闲”态并且没有总线请求,就关闭原始IP核时钟并保持关闭,直到总线再次对该IP提出请求。
可见,本实施例在原始IP核10的基础上增加一个逻辑电路并实现时钟开关逻辑,就形成了一个新IP核,该核是一个低功耗IP核15,实时自动地开关整个IP核15的时钟,减少IP核15时钟网络的跳变,从而降低IP核15的动态功耗。
进一步地,将逻辑电路11的供电电源与所述原始IP核10的供电电源隔离,该逻辑电路10还实现以下逻辑功能:当且仅当所述原始IP核10处于“空闲”态并且没有总线请求时,关闭原始IP核10的供电电源;否则打开原始IP核10的供电电源。这样的低功耗IP核15能够自动开关原始IP核10的电源,在不影响正常工作的前提下降低该IP核的漏电功耗。
实施例2
图2是本发明另一实施例对隐式的状态描述的原始IP核的降低功耗的示意图,说明进行低功耗改造时的具体方法。该IP核原始设计的流水线共分为3级流水线,每一级都是包含众多寄存器位的寄存器槽。本实施例降低功耗的方法包括:
步骤a)将原始IP核的所有状态分为两类——“空闲”态和“工作”态,“工作”态即非“空闲”态,“空闲”态即该IP核当前没有进行有效工作的状态。
本实施例的原始IP核区别于大多数IP核的一个特点是,在用硬件描述语言描述的设计代码中没有显式的状态机描述,其状态是由多级流水线的有效位隐式表示的,因此需要适当进行处理,具体如下:
首先对原始IP核20(图中虚线框内)外的总线21的指令进行监测,判断其是否为有效的请求,如果是,“请求”信号被置1,否则置0;利用流水线1级22中的有效位寄存器,在“请求”信号被置1后的第一个时钟上升沿到来时,设置该有效位为1,即“流水线1级有效”信号为1;随后的两级流水线,流水线2级23、流水线3级24分别包含一位有效位寄存器,流水线1级22的有效位寄存器的数值在下一周期传递给流水线2级23的有效位,流水线2级23的有效位在下一周期传递给流水线3级24的有效位,以此类推;将流水线1到3级的有效位作为第一或门电路25的输入,输出为“流水线忙”信号;将“请求”信号和“流水线忙”信号作为第二或门电路26的输入,输出为“时钟使能”信号,作为低电平有效的锁存器27的数据端输入,外部的时钟信号作为该锁存器27的时钟端输入,锁存器27的输出为“门控”信号,该信号和时钟信号作为与门电路28的两个输入端,输出为原始IP核20内部使用的时钟。
第一或门25为三输入,第二或门26为两输入,与门28为两输入。
由于“时钟使能”信号由组合电路搭建,为了避免可能产生的时钟毛刺(glitch)而导致IP核的工作错误,使用锁存器(Latch)27和与门电路28搭建门控单元:当时钟为高电平的时候,锁存器27关闭从而屏蔽了毛刺的传递;当时钟为低电平时,锁存器27导通,与门28将屏蔽毛刺的传递。
本实施例在原始IP核20的基础上增加逻辑电路并实现时钟开关逻辑,就形成了一个新IP核30,该核是一个低功耗IP核30,与原始IP核具有相同的逻辑功能和时序,可以实时自动地开关整个IP核的时钟,减少IP核时钟网络的跳变,从而降低IP核的动态功耗。
进一步,将原始IP核20与其他逻辑电路的供电电源隔离,并且将锁存器27输出的“门控”信号或时钟使能信号作为该IP核20的电源开关信号,当“门控”信号为1时,打开该IP核20的电源,为0时关闭IP核20的电源。这样低功耗IP核30能够自动开关原始IP核20的电源,在不影响正常工作的前提下降低该IP核20的漏电功耗。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
Claims (7)
1、一种用于片上系统中功能模块的功耗降低方法,包括:
a)将原始功能模块的所有状态分为两类——“空闲”态和“工作”态,所述“工作”态为非“空闲”态,所述“空闲”态为该原始功能模块当前没有进行有效工作的状态;
b)提供一个逻辑电路与所述原始功能模块连接构成新的低功耗功能模块,该逻辑电路完成如下逻辑功能:如果总线没有对原始功能模块的请求,就保持时钟关闭;如果总线有对该原始功能模块的请求,则打开原始功能模块的时钟,原始功能模块进入“工作”态;保持时钟打开,直到原始功能模块处于“空闲”态并且没有总线请求,就关闭原始功能模块时钟并保持关闭,直到总线再次对该原始功能模块提出请求。
2、根据权利要求1所述用于片上系统中功能模块的降低功耗的方法,还包括:步骤c)将所述逻辑电路的供电电源与所述原始功能模块的供电电源隔离,该逻辑电路还实现以下逻辑功能:当且仅当所述原始功能模块处于“空闲”态并且没有总线请求时,关闭原始功能模块的供电电源;否则打开原始功能模块供电电源。
3、根据权利要求1所述用于片上系统中功能模块的功耗降低方法,所述步骤a)中,对于在硬件描述语言中有显式的状态机描述的,直接将其“空闲”状态划为一类,其它状态划为“工作态”;对于在硬件描述语言中不是显式的描述所述原始功能模块状态,而是在各个级别的流水线中隐式地表示的,需要对流水线中的有效位寄存器的结果进行编码,完成“空闲”态和“工作”态的划分。
4、根据权利要求1、2或3任一项所述用于片上系统中功能模块的功耗降低方法,步骤b)中所述逻辑电路包括一个低电平有效的锁存器与一个两输入与门相连接;并且,当时钟为高电平的时候,所述锁存器关闭;当时钟为低电平时,所述锁存器导通,所述与门屏蔽毛刺的传递。
5、根据权利要求1所述用于片上系统中功能模块的功耗降低方法,所述功能模块为知识产权核,具体包括以下步骤:
a)将原始知识产权核的所有状态分为两类——“空闲”态和“工作”态,所述“工作”态为非“空闲”态,所述“空闲”态为该知识产权核当前没有进行有效工作的状态;
b)提供一个逻辑电路与所述原始知识产权核连接构成新的低功耗知识产权核,该逻辑电路完成如下逻辑功能:如果总线没有对原始知识产权核的请求,就保持时钟关闭;如果总线有对该知识产权核的请求,则打开原始知识产权核的时钟,原始知识产权核进入“工作”态;保持时钟打开,直到原始知识产权核处于“空闲”态并且没有总线请求,就关闭原始知识产权核时钟并保持关闭,直到总线再次对该原始知识产权核提出请求。
6、根据权利要求5所述用于片上系统中知识产权核的功耗降低方法,步骤b)中所述逻辑电路包括一个低电平有效的锁存器与一个两输入与门相连接;并且,当时钟为高电平的时候,所述锁存器关闭;当时钟为低电平时,所述锁存器导通,所述与门屏蔽毛刺的传递。
7、根据权利要求5所述用于片上系统中知识产权核的功耗降低方法,所述逻辑电路包括:与非门电路(12),该与非门电路(12)的两个输入端分别连接原始知识产权核(10)的“空闲”态标志信号和总线无请求的标志信号;锁存器(13),所述与非门电路(12)的输出端连接到锁存器(13)的数据输入端,该锁存器(13)的另一个输入端连接工作时钟信号,锁存器(13)的输出端连接到一个与门电路(14)的一个输入端,所述与门电路(14)的另一个输入端连接工作时钟信号,所述与门电路(14)的输出端连接到原始知识产权核(10)为其输入工作时钟信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100809685A CN100442203C (zh) | 2006-05-26 | 2006-05-26 | 用于片上系统中知识产权核和功能模块的功耗降低方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100809685A CN100442203C (zh) | 2006-05-26 | 2006-05-26 | 用于片上系统中知识产权核和功能模块的功耗降低方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101078950A CN101078950A (zh) | 2007-11-28 |
CN100442203C true CN100442203C (zh) | 2008-12-10 |
Family
ID=38906446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100809685A Expired - Fee Related CN100442203C (zh) | 2006-05-26 | 2006-05-26 | 用于片上系统中知识产权核和功能模块的功耗降低方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100442203C (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101227298B (zh) * | 2008-01-09 | 2010-06-02 | 南京大学 | 基于片上网络的路由器功耗确定方法 |
US8127167B2 (en) * | 2009-03-30 | 2012-02-28 | Mediatek Inc. | Methods for reducing power consumption and devices using the same |
CN101959291B (zh) * | 2009-07-16 | 2012-10-03 | 北京中电华大电子设计有限责任公司 | 一种无线局域网卡芯片的时钟管理方法 |
CN103838295A (zh) * | 2012-11-27 | 2014-06-04 | 中兴通讯股份有限公司 | 一种低速外设模组集成方法及装置 |
US9395414B2 (en) * | 2012-12-28 | 2016-07-19 | Nvidia Corporation | System for reducing peak power during scan shift at the local level for scan based tests |
CN103091620B (zh) * | 2012-12-29 | 2014-12-10 | 江苏东大集成电路系统工程技术有限公司 | 一种针对扫描测试中捕获功耗的优化方法 |
CN104123117B (zh) * | 2013-04-28 | 2018-09-25 | 中国科学院微电子研究所 | 一种用于改善汽车电子控制系统电磁兼容特性的微控制器 |
KR102257380B1 (ko) * | 2014-12-22 | 2021-05-31 | 삼성전자주식회사 | 온칩 클록 컨트롤러를 포함하는 시스템온칩 및 이를 포함하는 모바일 장치 |
CN106681472B (zh) * | 2016-10-20 | 2019-08-23 | 南方电网科学研究院有限责任公司 | 异构多核处理器功耗控制装置及其功耗控制方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1510591A (zh) * | 2002-12-20 | 2004-07-07 | 中国科学院计算技术研究所 | 基于soc的网络计算机设计方法及其实现 |
CN1661512A (zh) * | 2004-02-24 | 2005-08-31 | 中国科学院计算技术研究所 | 一种soc架构下的处理器核动态变频装置和方法 |
-
2006
- 2006-05-26 CN CNB2006100809685A patent/CN100442203C/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1510591A (zh) * | 2002-12-20 | 2004-07-07 | 中国科学院计算技术研究所 | 基于soc的网络计算机设计方法及其实现 |
CN1661512A (zh) * | 2004-02-24 | 2005-08-31 | 中国科学院计算技术研究所 | 一种soc架构下的处理器核动态变频装置和方法 |
Non-Patent Citations (1)
Title |
---|
单片系统(SoC)设计技术. 陈岚,唐志敏.计算机研究与发展,第39卷第1期. 2002 * |
Also Published As
Publication number | Publication date |
---|---|
CN101078950A (zh) | 2007-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100442203C (zh) | 用于片上系统中知识产权核和功能模块的功耗降低方法 | |
US8868941B2 (en) | Apparatus and methods for an interconnect power manager | |
CN103412990B (zh) | 一种多层次协同低功耗设计方法 | |
US7945875B2 (en) | Methodology for hierarchy separation at asynchronous clock domain boundaries for multi-voltage optimization using design compiler | |
JPH1173302A (ja) | グリッチ分析と低減に重点をおいたレジスタトランスファレベルの電力消費最適化回路、方法、及び記録媒体 | |
CN103477561B (zh) | 可配置逻辑单元 | |
CN109613970B (zh) | 一种基于fpga和dsp架构的低功耗处理方法 | |
US8954904B1 (en) | Veryifing low power functionality through RTL transformation | |
CN105095040A (zh) | 一种芯片调试方法与装置 | |
Macko et al. | Power-management specification in SystemC | |
US7774730B2 (en) | Method of and system for designing semiconductor integrated circuit | |
CN107305526A (zh) | 一种用于微控制器的调试器 | |
CN101350612A (zh) | 一种防止门控时钟毛刺的电路 | |
Özbaltan et al. | Exercising symbolic discrete control for designing low-power hardware circuits: an application to clock-gating | |
CN202494949U (zh) | 一种基于总线从单元接口的时钟管理模块 | |
CN206363301U (zh) | 超低功耗的type_c接口协议芯片 | |
Mukherjee et al. | Formal verification of hardware/software power management strategies | |
Ganai et al. | DiVer: SAT-based model checking platform for verifying large scale systems | |
Stahl et al. | Hazard detection in a GALS wrapper: A case study | |
CN105676995B (zh) | 一种实现三维测量芯片低功耗的方法 | |
CN116009647A (zh) | 一种降低时钟树上功耗的芯片及时钟控制方法 | |
CN112579518B (zh) | 网络拓扑结构的构建方法、访问方法及装置 | |
KR20070022545A (ko) | 디바이스의 전원차단효과를 rtl에서 검증할 수 있는모델 및 전원차단효과를 모델링 하는 방법 | |
Menaka et al. | Asynchronous Circular Buffers based on FIFO for Network on Chips | |
Macko | PMHLS 2.0: An automated optimization of power management during high-level synthesis |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20081210 |