CN1980062A - 一种降低fpga芯片功耗的电路和方法 - Google Patents
一种降低fpga芯片功耗的电路和方法 Download PDFInfo
- Publication number
- CN1980062A CN1980062A CN 200510126422 CN200510126422A CN1980062A CN 1980062 A CN1980062 A CN 1980062A CN 200510126422 CN200510126422 CN 200510126422 CN 200510126422 A CN200510126422 A CN 200510126422A CN 1980062 A CN1980062 A CN 1980062A
- Authority
- CN
- China
- Prior art keywords
- clock
- circuit
- power consumption
- fpga chip
- chip power
- 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
Links
Images
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Power Sources (AREA)
Abstract
本发明公开了一种降低FPGA芯片功耗的电路和方法,其中,该电路包括:一事件观测器和一时钟切换电路;所述事件观测器用于监测是否有待处理的信息,以给出时钟切换的信号;所述时钟切换电路用于根据所述事件观测器给出的结果在不同速率的时钟之间进行时钟切换,并且在时钟切换的过程中,不产生小于所有输入时钟周期的时钟脉冲。本发明提供了一种简单的方法和电路,实现在不需要大量改动系统结构的情况下有效地降低系统的功耗;本发明还可以对同步设计的模块或系统进行改进,只需增加少量的电路,就可以模块或系统的工作时钟在高速和低速之间自动切换,从而在不影响原设计的情况下,最大程度地降低FPGA的功耗。
Description
技术领域
本发明涉及FPGA技术,特别涉及FPGA功耗技术中一种降低FPGA芯片功耗的电路和方法。
背景技术
近年来,随着FPGA(Field Programmable Gate Array,现场可编程逻辑阵列)工作频率、集成度、复杂度的不断提高,FPGA的功耗快速增加,功耗的提高带来了一系列的现实问题:首先,功耗增加引起的FPGA运行温度上升会引起半导体电路的运行参数漂移,影响IC(Integrated Circuit,集成电路)的正常工作;其次,功耗增加引起的FPGA运行温度上升会缩短芯片寿命;而且对系统冷却的要求也相应提高,不仅增加了系统成本,而且限制了系统性能的进一步提高;需要在保证性能的前提下,尽可能地节省FPGA功耗。
在CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体)电路中,一般消耗功率与延迟时间的近似表达式由下式表示:
p=a*f*CL*Vs*VDD+a*ISC*Δtsc*VDD*f+Ileak*VDD (1)
式(1)中,α为转换概率,CL为负载电容,Vs为信号幅度,VDD为电源电压,ISC为贯通电流的平均值,Δtsc为贯通电流流过的时间,f为时钟频率,Ileak为漏泄电流。式(1)中第1项为负载电容充放电所需的功率,Vs与VDD通常相等,故与电源电压的2次方成比例;第2项是门转换时流过的贯动电池产生的功率,因输入信号比输出信号变化快,故其值很小,在电路设计时按输入信号与输出信号的迁移时间大体相等考虑,其贯通电流产生的功率可限定为第1项的大约10%;第3项是恒定流过电源与密封罩的漏泄电流产生的功率,即静态功耗。
对于FPGA来说,VDD、Vs、Ileak等都是由所选用的芯片决定的,只有α为转换概率和f为时钟频率在FPGA的设计的时候可以优化。低功耗设计方法有很多种,最为常用的三种设计方法:门控时钟、操作数隔离及存储器分区访问。
门控时钟和操作数隔离的策略十分有效,但都是在设计的初期就要充分设计和准备,从系统设计开始就要为实现低功耗需要付出相当的代价。使用门控时钟,需要设计的时候特别设计时钟的OE(输出使能)信号,由于有了OE信号,增加了特别的逻辑,对系统的时序的实现也可能带来负面的影响。使用操作数隔离的策略,需要对每个模块的输入进行分析,在模块不使用的时候保持输入信号的不变,从而降低系统的功耗。存储器分区访问技术仅仅对访问存储器有效。
发明内容
本发明所要解决的技术问题在于提供一种降低FPGA芯片功耗的电路和方法,用于在不需要大量改动系统结构的情况下有效地降低系统的功耗。
为了实现上述目的,本发明提供了一种降低FPGA芯片功耗的电路,其特征在于,包括:一事件观测器和一时钟切换电路;所述事件观测器用于监测是否有待处理的信息,以给出时钟切换的信号;所述时钟切换电路用于根据所述事件观测器给出的结果在不同速率的时钟之间进行时钟切换,并且在时钟切换的过程中,不产生小于所有输入时钟周期的时钟脉冲。
所述的降低FPGA芯片功耗的电路,其中,所述时钟切换为二个或多个不同速率的时钟之间的切换。
所述的降低FPGA芯片功耗的电路,其中,所述时钟切换电路在第一速率时钟、第二速率时钟为低电平时进行所述第一速率时钟、第二速率时钟之间的切换。
所述的降低FPGA芯片功耗的电路,其中,所述时钟切换电路分别通过一第一速率时钟控制信号、一第二速率时钟控制信号控制所述第一速率时钟、所述第二速率时钟之间的切换。
所述的降低FPGA芯片功耗的电路,其中,所述时钟切换电路在进行时钟切换的过程中,所述第一速率时钟控制信号、第二速率时钟控制信号是互锁的。
所述的降低FPGA芯片功耗的电路,其中,在所述第二速率时钟切入之前,所述第二速率时钟已运行一个或多个时钟周期。
为了实现上述目的,本发明还提供了一种降低FPGA芯片功耗的方法,其特征在于,包括:
一设置事件观测器的步骤,用于监测是否有待处理的信息,以给出时钟切换的信号;
一设置时钟切换电路的步骤,用于根据所述事件观测器给出的结果在不同速率的时钟之间进行时钟切换,并且在时钟切换的过程中,不产生小于所有输入时钟周期的时钟脉冲。
所述的降低FPGA芯片功耗的方法,其中,所述设置事件观测器的步骤中,所述事件观测器通过FIFO队列的空/满标志或加减计数器或堆栈的计数方式实现监测是否有待处理的信息。
所述的降低FPGA芯片功耗的方法,其中,所述设置时钟切换电路的步骤中,所述时钟切换电路在第一速率时钟、第二速率时钟为低电平时进行所述第一速率时钟、第二速率时钟之间的切换。
所述的降低FPGA芯片功耗的方法,其中,在所述第二速率时钟切入之前,所述第二速率时钟已运行一个或多个时钟周期。
本发明提供了一种简单的方法和电路,实现在不需要大量改动系统结构的情况下有效地降低系统的功耗;本发明还可以对同步设计的模块或系统进行改进,只需增加少量的电路,就可以模块或系统的工作时钟在高速和低速之间自动切换,从而在不影响原设计的情况下,最大程度地降低FPGA的功耗。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
附图说明
图1为本发明的结构框图;
图2为普通时钟切换的电路;
图3为普通时钟切换的电路的时序;
图4为本发明改进的时钟切换电路;
图5a-5b分别为A_Select信号、B_Select信号的产生电路图;
图6为本发明改进后的时钟切换时序。
具体实施方式
请参阅图1所示,为本发明的结构框图。系统的功耗和系统的工作频率成正比,而在系统中有相当多的模块并不始终需要运行在最高的频率处,也就是说,在部分时间,模块需要全速运行,而在其余的时间,模块可以低速运行,甚至停止工作。本发明提供的降低功耗电路,可以根据系统的需要在不同速率的时钟之间切换,以达到降低功耗的目的。图1示出的结构框图给出该降低功耗电路,该电路主要由事件观测器10和时钟切换电路20构成;其中事件观测器10用来监测是否有待处理的信息,从而给出时钟切换的信号。最简单的做法可以用FIFO(First-In First-Out,先进先出)队列的空满标志实现,也可以通过加减计数器或堆栈的计数方式来实现。
时钟切换电路20,是要根据事件观测器10给出的结果,自由地在二个或多个时钟之间切换,在时钟切换的过程中,不产生小于所有输入时钟周期的时钟脉冲,并且不能引入毛刺或时序错误。
请参阅图2所示,为普通时钟切换的电路。通常的切换电路是个二选一的多路开关,在时钟的切换中会引入毛刺或时序的错误。
请参阅图3所示,为普通时钟切换的电路的时序。仔细分析该图3,可以看到,在图3中的Clk_Out 330的第2个时钟的周期小于输入Clk_A 310的周期也小于Clk_B 320的周期,从而在时钟的切换中会引入时序的错误。
请参阅图4所示,为本发明改进的时钟切换电路。为了克服上述图3中电路的缺陷,需要构造一种电路,避免上述缺陷的产生,该电路必须满足以下条件:
(1),时钟的切换在时钟为低电平的时候进行;
(2),切换的过程中互锁保护,按时钟A切出,低电平保持和时钟B切入的步骤进行;
(3),在时钟B切入前,至少要保证时钟B完整地运行一个时钟周期。
因此,使用图4中的时钟切换电路,Clk_A 410和Clk_B 420分别由A_Select信号401和B_select信号402控制,在时钟由Clk_A 410切换到Clk_B420的过程中,信号变化如下:
1,初始状态,A_Select=‘1’,B_Select=‘0’,Clk_Out 430输出为Clk_A;
2,在Clk_A 410为低电平时,A_Select=‘0’,B_Select=‘0’,Clk_Out430输出低电平;
3,等待Clk_B 420的一个完整的周期;
4,在Clk_B 420为低电平时,A_Select=‘0’,B_Select=‘1’,Clk_Out430输出为Clk_B。
请参阅图5a-5b所示,分别为A_Select信号、B_Select信号的产生电路图。了满足上述图4的时序要求,A_Select信号401和B_Select信号402分别由图5a和图5b完成。该电路完成的功能和特点:
1),A_Select信号401和B_Select信号402是互锁的;
2),时钟使用下降沿触发,而不是普通的上升沿触发;
3),保证检测到一个完整的时钟;
4),异步信号的同步处理。
请参阅图6所示,为本发明改进后的时钟切换时序。分析该图中的时钟切换时序,可以看出:采用本发明的电路和方法有效解决了在时钟的切换中引入毛刺、时序的错误。
在使用以上的时钟系统中,本发明还可以对同步设计的模块或系统进行改进,只需增加少量的电路:事件检测器和时钟切换电路,就可以模块或系统的工作时钟在高速和低速之间自动切换,从而在不影响原设计的情况下,最大程度地降低FPGA的功耗。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (10)
1、一种降低FPGA芯片功耗的电路,其特征在于,包括:一事件观测器和一时钟切换电路;所述事件观测器用于监测是否有待处理的信息,以给出时钟切换的信号;所述时钟切换电路用于根据所述事件观测器给出的结果在不同速率的时钟之间进行时钟切换,并且在时钟切换的过程中,不产生小于所有输入时钟周期的时钟脉冲。
2、根据权利要求1所述的降低FPGA芯片功耗的电路,其特征在于,所述时钟切换为二个或多个不同速率的时钟之间的切换。
3、根据权利要求2所述的降低FPGA芯片功耗的电路,其特征在于,所述时钟切换电路在第一速率时钟、第二速率时钟为低电平时进行所述第一速率时钟、第二速率时钟之间的切换。
4、根据权利要求3所述的降低FPGA芯片功耗的电路,其特征在于,所述时钟切换电路分别通过一第一速率时钟控制信号、一第二速率时钟控制信号控制所述第一速率时钟、所述第二速率时钟之间的切换。
5、根据权利要求4所述的降低FPGA芯片功耗的电路,其特征在于,所述时钟切换电路在进行时钟切换的过程中,所述第一速率时钟控制信号、第二速率时钟控制信号是互锁的。
6、根据权利要求3、4或5所述的降低FPGA芯片功耗的电路,其特征在于,在所述第二速率时钟切入之前,所述第二速率时钟已运行一个或多个时钟周期。
7、一种降低FPGA芯片功耗的方法,其特征在于,包括:
一设置事件观测器的步骤,用于监测是否有待处理的信息,以给出时钟切换的信号;
一设置时钟切换电路的步骤,用于根据所述事件观测器给出的结果在不同速率的时钟之间进行时钟切换,并且在时钟切换的过程中,不产生小于所有输入时钟周期的时钟脉冲。
8、根据权利要求7所述的降低FPGA芯片功耗的方法,其特征在于,所述设置事件观测器的步骤中,所述事件观测器通过FIFO队列的空/满标志或加减计数器或堆栈的计数方式实现监测是否有待处理的信息。
9、根据权利要求7或8所述的降低FPGA芯片功耗的方法,其特征在于,所述设置时钟切换电路的步骤中,所述时钟切换电路在第一速率时钟、第二速率时钟为低电平时进行所述第一速率时钟、第二速率时钟之间的切换。
10、根据权利要求9所述的降低FPGA芯片功耗的方法,其特征在于,在所述第二速率时钟切入之前,所述第二速率时钟已运行一个或多个时钟周期。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005101264224A CN1980062B (zh) | 2005-12-09 | 2005-12-09 | 一种降低fpga芯片功耗的电路和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2005101264224A CN1980062B (zh) | 2005-12-09 | 2005-12-09 | 一种降低fpga芯片功耗的电路和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1980062A true CN1980062A (zh) | 2007-06-13 |
CN1980062B CN1980062B (zh) | 2011-08-10 |
Family
ID=38131104
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005101264224A Expired - Fee Related CN1980062B (zh) | 2005-12-09 | 2005-12-09 | 一种降低fpga芯片功耗的电路和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1980062B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247135B (zh) * | 2008-04-02 | 2011-05-11 | 普天信息技术研究院有限公司 | 低功耗fpga、及降低fpga的功耗的方法 |
CN102654532A (zh) * | 2011-05-31 | 2012-09-05 | 杭州万工科技有限公司 | 电能计量芯片降低功耗的方法 |
CN103051330A (zh) * | 2012-12-12 | 2013-04-17 | 中国航空工业集团公司洛阳电光设备研究所 | 一种脉冲中心到脉冲中心的计数方法 |
CN107453750A (zh) * | 2017-07-17 | 2017-12-08 | 北京时代民芯科技有限公司 | 一种适用于sram型fpga的多功能时钟缓冲器 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102854458B (zh) * | 2012-08-21 | 2016-01-20 | 浪潮电子信息产业股份有限公司 | 一种兼容高速和低速布局的验证设计方法 |
CN106529067B (zh) * | 2016-11-23 | 2019-03-15 | 中国电子科技集团公司第五十四研究所 | 一种低功耗时钟动态管理电路及管理方法 |
-
2005
- 2005-12-09 CN CN2005101264224A patent/CN1980062B/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101247135B (zh) * | 2008-04-02 | 2011-05-11 | 普天信息技术研究院有限公司 | 低功耗fpga、及降低fpga的功耗的方法 |
CN102654532A (zh) * | 2011-05-31 | 2012-09-05 | 杭州万工科技有限公司 | 电能计量芯片降低功耗的方法 |
CN102654532B (zh) * | 2011-05-31 | 2014-09-03 | 万高(杭州)科技有限公司 | 电能计量芯片降低功耗的方法 |
CN103051330A (zh) * | 2012-12-12 | 2013-04-17 | 中国航空工业集团公司洛阳电光设备研究所 | 一种脉冲中心到脉冲中心的计数方法 |
CN107453750A (zh) * | 2017-07-17 | 2017-12-08 | 北京时代民芯科技有限公司 | 一种适用于sram型fpga的多功能时钟缓冲器 |
Also Published As
Publication number | Publication date |
---|---|
CN1980062B (zh) | 2011-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1980062B (zh) | 一种降低fpga芯片功耗的电路和方法 | |
US6822481B1 (en) | Method and apparatus for clock gating clock trees to reduce power dissipation | |
CN105159374B (zh) | 面向超宽电压的在线监测单元及监测窗口自适应调节系统 | |
CN103984274B (zh) | 数字电源闸控的集成电路及方法 | |
US7904874B2 (en) | Opposite-phase scheme for peak current reduction | |
CN106452394B (zh) | 一种具有自动复位功能的时钟切换结构 | |
CN103795393A (zh) | 状态保持电源门控单元 | |
CN102799211B (zh) | 内部时钟门控装置 | |
CN101853067B (zh) | 减少装置功率消耗的方法及具有嵌入式存储器模块的装置 | |
CN101350612B (zh) | 一种防止门控时钟毛刺的电路 | |
CN104104377A (zh) | 时钟门控电路 | |
CN102880441B (zh) | 先入先出装置及其实现方法 | |
Lin et al. | Fine-grained power gating for leakage and short-circuit power reduction by using asynchronous-logic | |
CN103152051B (zh) | 一种低功耗逐次逼近型模数转换器 | |
CN109669524A (zh) | 芯片的上电复位电路 | |
CN105425898B (zh) | 一种低功耗嵌入式系统 | |
CN106452395A (zh) | 一种多路时钟分发电路及电子设备 | |
Huda et al. | Charge recycling for power reduction in FPGA interconnect | |
CN105915209B (zh) | 一种多功能低功耗熔丝修调控制电路及其控制方法 | |
CN209625154U (zh) | 一种soc电源管理电路 | |
Lee et al. | NBTI-aware power gating design | |
US20120139603A1 (en) | Tunable delay cell apparatus | |
RU2421772C2 (ru) | Самосинхронное вычислительное устройство с адаптивным режимом питания ядра | |
CN102324923A (zh) | 一种电平移位电路 | |
JP2012134321A (ja) | 半導体装置 |
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: 20110810 Termination date: 20171209 |