Ⅰ clock gating 和 power gating的区别
clock gating 时钟门控;门控时钟;时脉闸控
power gating电源门控;功率门控;功率门限
区别:
门控时钟(英语:Clockgating),“门控”是指一个时钟信号与另外一个非时钟信号作逻辑输出的时钟。例如,用一个控制信号“与”一个clk,可以控制clk的起作用时间。可以通过关闭芯片上暂时用不到的功能和它的时钟,从而实现节省电流消耗的目的。门控时钟是低功耗设计中的一种最有效的方法。
门控时钟是一种在同步时序逻辑电路的一种时间脉冲信号技术,可以降低芯片功耗。门控时钟通过在电路中增加额外的逻辑单元、优化时钟树结构来节省电能。
可以通过以下几种方式在设计中添加门控时钟逻辑:
通过寄存器传输级编程中的条件选择来实现使能信号,从而在逻辑综合过程自动被翻译为门控时钟;
通过实例化特殊的门控时钟单元,来把门控时钟插入到设计中去;
使用专门的门控时钟工具添加。
Ⅱ clock gating,什么是clock gating
clock gating
门控时钟
clock-gating technique门控技术
Clock-gating checks时钟门锁检查 ; 时钟门的检查
Clock-gating methodClock-gating技术 ; clock-gating技术
clock-gating门控时钟
Clock-gating技术Clock-gating method ; clock-gating method
clock-gating setup and hold门的建立和保持
clock gating cell单元 ; 门控时钟单元
Globle Clock Gating全局时钟开关
Cell level Clock Gating单元级门控时钟技术
Clockgatingisan .
时钟闸控是降低数位电路动态功率消耗的有效方法。
Ⅲ 低功耗设计方法有哪些
数字电路的功耗有2部分构成,其一是静态功耗,通常表现为电子线路的漏电流,控制这部分功耗主要决定于生产工艺和所用的材料;其二是动态工作电流,而影响这部分功耗的因素很多,如电路设计的方式,线路的复杂程度,工作时时钟频率等。
一、RTL级
1.并行结构
并行结构一定程度可以减低某一区域的频率,从而可能降低功耗。
2.流水结构
“路径长度缩短为原始路径长度的1 /M。这样,一个时钟周期内充/放电电容变为C/M。如果在加入流水线之后,时钟速度不变,则在一个周期内,只需要对C/M进行充/放电,而不是原来对C进行充/放电。因此,在相同的速度要求下,可以采用较低的电源电压来驱动系统。”
3.优化编码
通过数据编码来降低开关活动,例如用格雷码取代二进制。
4.操作数隔离
“操作数隔离的原理就是:如果在某一段时间内,数据通路的输出是无用的,则将它的输入置成个固定值,这样,数据通路部分没有翻转,功耗就会降低。”
二、门级电路
1.门控时钟技术
芯片工作时,很大一部分功耗是由于时钟网络的翻转消耗的,对于一个设计中的寄存器组由于时钟信号CLK的翻转,寄存器组会持续在CLK的上升沿来临时读取数据输入端的数据,而这时读取的数据是不变的,这就消耗了额外的功耗。如果时钟网络较大,这部分引起的功耗损失会很大。门控技术基本原理就是通过关闭芯片上暂时用不到的功能和它的时钟,从而实现节省电流消耗的目的,门控时钟对翻转功耗和内部功耗的抑制作用最强,是低功耗设计中的一种最有效的方法。通过一个时能信号控制时钟的开关。当系统不工作时可以关闭时钟,整个系统处于非激活状态,这样就能够在某种程度上降低系统功耗。
“通常情况下,时钟树由大量的缓冲器和反相器组成,时钟信号为设计中翻转率最高的信号,时钟树的功耗可能高达整个设计功耗30%。加入门控时钟电路后,由于减少了时钟树的开关行为,节省了开关功耗。同时,由于减少了时钟引脚的开关行为,寄存器的内部功耗也减少了。采用门控时钟,可以非常有效地降低设计的功耗,一般情况下能够节省20%~60%的功耗。”
使用门控时钟并不符合同步设计的思想。ASIC中使用较多,FPGA中不推荐使用。
2.多电压供电
3.多阈值电压
根据多阈值电压单元的特点,为了满足时序的要求,关键路径中使用低阈值电压的单元(low Vt cells),以减少单元门的延迟,改善路径的时序。而为了减少静态功耗,在非关键路径中使用高阈值电压的单元(high Vt cells),以降低静态功耗。因此,使用多阈值电压的工艺库,我们可以设计出低静态功耗和高性能的设计。
Ⅳ 同步电路是什么意思
什么是同步逻辑和异步逻辑,同步电路和异步电路的区别是什么?
同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系。
电路设计可分类为同步电路和异步电路设计。
同步电路利用时钟脉冲使其子系统同步运作,而异步电路不使用时钟脉冲做同步,其子系统是使用特殊的“开始”和“完成”信号使之同步。由于异步电路具有下列优点--无时钟歪斜问题、低电源消耗、平均效能而非最差效能、模块性、可组合和可复用性--因此近年来对异步电路研究增加快速,论文发表数以倍增,而Intel Pentium 4处理器设计,也开始采用异步电路设计。
异步电路主要是组合逻辑电路,用于产生地址译码器、FIFO或RAM的读写控制信号脉冲,其逻辑输出与任何时钟信号都没有关系,译码输出产生的毛刺通常是可以监控的。同步电路是由时序电路(寄存器和各种触发器)和组合逻辑电路构成的电路,其所有操作都是在严格的时钟控制下完成的。这些时序电路共享同一个时钟CLK,而所有的状态变化都是在时钟的上升沿(或下降沿)完成的。
异步电路重要是组合逻辑电路,用于产生天址译码器、FIFO或RAM的读写节制信号脉冲,但它同时也用在时序电路中,彼时它出有统一的时钟,状态变化的时辰是不稳定的,通常输入信号只在电路处于波动状态时才发作变化。也就是说一个时辰容许一个输入产生变化,以防止输入信号之间形成的竞让冒险。电路的稳定需求有可靠的建立时间和持时间,待上面引见。
同步电路是由时序电路(寄存器和各种触发器)和组合逻辑电路形成的电路,其一切操作都是在严厉的时钟掌握下完成的。这些时序电路同享统一个时钟CLK,而一切的状态变化都是在时钟的上升沿(或降落沿)完成的。比如D触发器,当上升延到来时,寄存器把D端的电平传到Q输出端。
Ⅳ 时钟电路设计需要哪些元件
方案的论证与选择
1.1方案论证
1.1.1采用MCS—51系列单片机和压力传感器来完成
压力传感器是鸡蛋闹钟必须用到的传感器,它具有结构简单、体积小、重量轻、使用寿命长等优异的特点。控制电路主要由单片机和程序来实现,这样的设计具有性能稳定,做工可靠,价格低廉,结构简单的优点,但也存在编程难度大的缺点。这种设计是目前工业中最常用的一种设计,产品整体价成本格较低,硬件结构简单,容易实现。
1.1.2采用TTL集成门电路和压力传感器来实现
这种设计同样采用压力传感器,但是控制电路采用集成门电路,电路主要由振荡器,分频器,计数器,译码器,显示电路组成。它的特点在于精度高,抗干扰能力强,允许的工作电压范围大,不需要编程,但同时也在产品体积大,硬件结构复杂,工作不可靠,技术老化,成本相对较高的缺点。这种设计目前在市场上已经基本淘汰。
1.1.3采用MCS—51系列单片机,时钟芯片和压力传感器来设计
这种设计在控制电路中加入了一个时钟芯片,总体来说,产品需要的编程难度降低,但是产品的硬件结构复杂了,而且时钟芯片的价格也很昂贵,提高了成本,这种设计在目前的市场上很少见。
1.2方案的选择
综上所述,应选用方案一来完成鸡蛋闹钟的设计。
这里介绍的电子钟,电路可称得上极简,它仅使用单片的20引脚单片机完成电子钟的全部功能,而笔者见到的其它设计方案均采用二片以上的多片IC实现。
电路见图1。
一片20引脚的单片机AT89C2051为电子钟主体,其显示数据从P1口分时输出,P3.0~3.3则输出对应的位选通信号。由于LED数码管点亮时耗电较大,故使用了四只PNP型晶体管VT1~VT4进行放大。本来笔者还有一种更简的设计方案(见图2),可省去VT1~VT4及R1~R4八个元件,但这种设计由于单片机输出口的灌入电流有限(约20mA),数码管亮度较暗而不向读者介绍,除非你采用了高亮度的发光数码管。
P3.4、P3.5、3.7外接了三个轻触式按键,这里我们分别命名为:模式设定键set(P3.4)、时调整键hour(P3.5)、分调整键min(P3.7)。C1、R13组成上电复位电路。VT5及蜂鸣器Bz为闹时讯响电路。三端稳压器7805输出的5V电压供整个系统工作。此电子钟可与任何9~20V/100mA的交直流电源适配器配合工作,适应性强。
电子钟功能
1.走时:通过模式设定键set选择为走时,U1、U2显示小时,U3、U4显示分。U2的小数点为秒点,每秒闪烁一次。
2.走时调整:通过模式设定键set选择为走时调整,按下hour键对U1、U2的走时“时”显示进行调整(每0.2秒递加1)。按下min键对U3、U4的走时“分”显示进行调整(每0.2秒递加1)。
3.闹时调整:通过模式设定键set选择为闹时调整,按下hour键对U1、U2的闹时“时”显示进行调整(每0.2秒递加1)。按下min键对U3、U4的闹时“分”显示进行调整(每0.2秒递加1)。
4.闹时启/停设定:通过模式设定键set选择为闹时启/停设定,按下min键U3的小数点点亮,闹时功能启动;按下hour键U3的小数点熄灭,闹时功能关停。
由于电路设计得极其简单,因此丰富的功能只能由软件完成,这里软件设计成为了关键。下面介绍软件设计要点。
图3为主程序状态流程。
图3
运行时建立的主要状态标志如下:
flag—掉电标志。掉电后,flag内为一随机数;重新设定时间后flag内写入标志数55H。
set—工作模式设定标志。
hour—走时“时”单元。
min—走时“分”单元。
sec—走时“秒”单元。
deda—走时5mS计数单元
t_hour—闹时“时”单元。
t_min—闹时“分”单元。
d_05s—0.5秒位标志。每秒钟的前0.5秒置1,后0.5秒置0,以使秒点闪烁。
o_f—闹时启/停位标志。闹时启动置1,闹时关停置0。
另外将定时器T0设定为5mS的定时中断。这里晶振频率为12MHz,因此5mS的初值为-5000,但实际上程序还要作其它运算,使得时间偏长,经调整
很高兴回答楼主的问题 如有错误请见谅
Ⅵ atom z8350 启动方式
atom z8350启动方式作为intel的低功耗、高集成度4核处理器。
intel Atom X5-Z8350 和 X5-Z8300 都具备完善的指令集支持能力,不但具备强大的处理和扩展能力,支持多种接口和协议,并且支持最新的win10系统、LINUX系统、甚至可以支持Andriod系统。
门控逻辑模块时钟对时钟网络进行划分,如果在当前的时钟周期内,系统没有用到某些逻辑模块,则暂时切断这些模块的时钟信号,从而明显地降低开关功耗。
门控时钟和可变频率时钟:
在微处理器中,很大一部分功耗来自时钟。时钟是惟一在所有时间都充放电的信号,而且很多情况下引起不必要的门的翻转,因此降低时钟的开关活动性将对降低整个系统的功耗产牛很大的影响。门控时钟包括门控逻辑模块时钟和门控寄存器时钟。
采用“与”门实现的时钟控制电路。门控寄存器时钟的原理是当寄存器保持数据时,关闭寄存器时钟,以降低功耗。然而,门控时钟易引起毛刺,必须对信号的时序加以严格限制,并对其进行仔细的时序验证。
Ⅶ 已知时钟clk和data信号,设计电路实现波形A和B
没有看到时钟clk和data信号数据,以及A和B波形图;
请补充上来;
Ⅷ 奥数 时钟问题
关于时钟问题的探讨
作者:未知
无沦是用离散逻辑、可编程逻辑,还是用全定制硅器件实现的任何数字设计,为了成功地操作,可靠的时钟是非常关键的。设计不良的时钟在极限的温度、电压或制造工艺的偏差情况下将导致错误的行为,并且调试困难、花销很大。 在设计pld/fpga时通常采用几种时钟类型。时钟可分为如下四种类型:全局时钟、门控时钟、多级逻辑时钟和波动式时钟。多时钟系统能够包括上述四种时钟类型的任意组合。
1.全局时钟
对于一个设计项目来说,全局时钟(或同步时钟)是最简单和最可预测的时钟。在pld/fpga设计中最好的时钟方案是:由专用的全局时钟输入引脚驱动的单个主时钟去钟控设计项目中的每一个触发器。只要可能就应尽量在设计项目中采用全局时钟。pld/fpga都具有专门的全局时钟引脚,它直接连到器件中的每一个寄存器。这种全局时钟提供器件中最短的时钟到输出的延时。
图1 示出全局时钟的实例。图1 定时波形示出触发器的数据输入d[1..3]应遵守建立时间和保持时间的约束条件。建立和保持时间的数值在pld数据手册中给出,也可用软件的定时分析器计算出来。如果在应用中不能满足建立和保持时间的要求,则必须用时钟同步输入信号(参看下一章“异步输入”)。
图1 全局时钟
(最好的方法是用全局时钟引脚去钟控pld内的每一个寄存器,于是数据只要遵守相对时钟的建立时间tsu和保持时间th)
2.门控时钟
在许多应用中,整个设计项目都采用外部的全局时钟是不可能或不实际的。pld具有乘积项逻辑阵列时钟(即时钟是由逻辑产生的),允许任意函数单独地钟控各个触发器。然而,当你用阵列时钟时,应仔细地分析时钟函数,以避免毛刺。
通常用阵列时钟构成门控时钟。门控时钟常常同微处理器接口有关,用地址线去控制写脉冲。然而,每当用组合函数钟控触发器时,通常都存在着门控时钟。如果符合下述条件,门控时钟可以象全局时钟一样可靠地工作:
1.驱动时钟的逻辑必须只包含一个“与”门或一个“或”门。如果采用任何附加逻在某些工作状态下,会出现竞争产生的毛刺。
2.逻辑门的一个输入作为实际的时钟,而该逻辑门的所有其它输入必须当成地址或控制线,它们遵守相对于时钟的建立和保持时间的约束。
图2和图3 是可靠的门控时钟的实例。在 图2 中,用一个“与”门产生门控时钟,在 图3 中,用一个“或”门产生门控时钟。在这两个实例中,引脚nwr和nwe考虑为时钟引脚,引脚add[o..3]是地址引脚,两个触发器的数据是信号d[1..n]经随机逻辑产生的。
图2 “与”门门控时钟
图3 “或”门门控时钟
图2和图3 的波形图显示出有关的建立时间和保持时间的要求。这两个设计项目的地址线必须在时钟保持有效的整个期间内保持稳定(nwr和nwe是低电平有效)。如果地址线在规定的时间内未保持稳定,则在时钟上会出现毛刺,造成触发器发生错误的状态变化。另一方面,数据引脚d[1..n]只要求在nwr和nwe的有效边沿处满足标准的建立和保持时间的规定。
我们往往可以将门控时钟转换成全局时钟以改善设计项目的可靠性。图4 示出如何用全局时钟重新设计 图2 的电路。地址线在控制d触发器的使能输入,许多pld设计软件,如max+plusii软件都提供这种带使能端的d触发器。当ena为高电平时,d输入端的值被钟控到触发器中:当ena为低电平时,维持现在的状态。
图4 “与”门门控时钟转化成全局时钟
图4 中重新设计的电路的定时波形表明地址线不需要在nwr有效的整个期间内保持稳定;而只要求它们和数据引脚一样符合同样的建立和保持时间,这样对地址线的要求就少很多。
图 给出一个不可靠的门控时钟的例子。3位同步加法计数器的rco输出用来钟控触发器。然而,计数器给出的多个输入起到时钟的作用,这违反了可靠门控时钟所需的条件之一。在产生rco信号的触发器中,没有一个能考虑为实际的时钟线,这是因为所有触发器在几乎相同的时刻发生翻转。而我们并不能保证在pld/fpga内部qa,qb,qc到d触发器的布线长短一致,因此,如 图5 的时间波形所示,在器从3计到4时,rco线上会出现毛刺(假设qc到d触发器的路径较短,即qc的输出先翻转)。
图5 不可靠的门控时钟
(定时波形示出在计数器从3到4改变时,rco信号如何出现毛刺的)
图6 给出一种可靠的全局钟控的电路,它是图5不可靠计数器电路的改进,rco控制d触发器的使能输入。这个改进不需要增加pld的逻辑单元。
图6 不可靠的门控时钟转换为全局时钟
(这个电路等效于图5电路,但却可靠的多)
3.多级逻辑时钟
当产生门控时钟的组合逻辑超过一级(即超过单个的“与”门或“或”门)时,证设计项目的可靠性变得很困难。即使样机或仿真结果没有显示出静态险象,但实际上仍然可能存在着危险。通常,我们不应该用多级组合逻辑去钟控pld设计中的触发器。
图7 给出一个含有险象的多级时钟的例子。时钟是由sel引脚控制的多路选择器输出的。多路选择器的输入是时钟(clk)和该时钟的2分频(div2)。由图7 的定时波形图看出,在两个时钟均为逻辑1的情况下,当sel线的状态改变时,存在静态险象。险象的程度取决于工作的条件。 多级逻辑的险象是可以去除的。例如,你可以插入“冗余逻辑”到设计项目中。然而,pld/fpga编译器在逻辑综合时会去掉这些冗余逻辑,使得验证险象是否真正被去除变得困难了。为此,必须应寻求其它方法来实现电路的功能。
图7 有静态险象的多级时钟
图8 给出 图7 电路的一种单级时钟的替代方案。图中sel引脚和div2信号用于使能d触发器的使能输入端,而不是用于该触发器的时钟引脚。采用这个电路并不需要附加pld的逻辑单元,工作却可靠多了。 不同的系统需要采用不同的方法去除多级时钟,并没有固定的模式。
图7 无静态险象的多级时钟
(这个电路逻辑上等效于图7,但却可靠的多)
4.行波时钟
另一种流行的时钟电路是采用行波时钟,即一个触发器的输出用作另一个触发器的时钟输入。如果仔细地设计,行波时钟可以象全局时钟一样地可靠工作。然而,行波时钟使得与电路有关的定时计算变得很复杂。行波时钟在行波链上各触发器的时钟之间产生较大的时间偏移,并且会超出最坏情况下的建立时间、保持时间和电路中时钟到输出的延时,使系统的实际速度下降。
用计数翻转型触发器构成异步计数器时常采用行波时钟,一个触发器的输出钟控下一个触发器的输入,参看图9 同步计数器通常是代替异步计数器的更好方案,这是因为两者需要同样多的宏单元而同步计数器有较快的时钟到输出的时间。图10 给出具有全局时钟的同步计数器,它和 图9 功能相同,用了同样多的逻辑单元实现,却有较快的时钟到输出的时间。几乎所有pld开发软件都提供多种多样的同步计数器。
图9 行波时钟
图10 行波时钟转换成全局时钟
(这个3位计数器是图9异步计数器的替代电路,它用了同样的3个宏单元,但有更短的时钟到输出的延时)
5. 多时钟系统
许多系统要求在同一个pld内采用多时钟。最常见的例子是两个异步微处理器器之间的接口,或微处理器和异步通信通道的接口。由于两个时钟信号之间要求一定的建立和保持时间,所以,上述应用引进了附加的定时约束条件。它们也会要求将某些异步信号同步化。
图11 给出一个多时钟系统的实例。clk_a用以钟控reg_a,clk_b用于钟控reg_b,由于reg_a驱动着进入reg_b的组合逻辑,故clk_a的上升沿相对于clk_b的上升沿有建立时间和保持时间的要求。由于reg_b不驱动馈到reg_a的逻辑,clk_b的上升沿相对于clk_a没有建立时间的要求。此外,由于时钟的下降沿不影响触发器的状态,所以clk_a和clk_b的下降沿之间没有时间上的要求。, 如图4,2.ii所示,电路中有两个独立的时钟,可是,在它们之间的建立时间和保持时间的要求是不能保证的。在这种情况下,必须将电路同步化。图12 给出reg_a的值(如何在使用前)同clk_b同步化。新的触发器reg_c由glk_b触控,保证reg_g的输出符合reg_b的建立时间。然而,这个方法使输出延时了一个时钟周期。
图ll 多时钟系统
(定时波形示出clk_a的上升沿相对于clk_b的上升沿有建立时间和保持时间的约束条件)
图12 具有同步寄存器输出的多时钟系统
(如果clk_a和clk_b是相互独立的,则reg—a的输出必须在它馈送到1reg_b之前,用reg_c同步化)
在许多应用中只将异步信号同步化还是不够的,当系统中有两个或两个以上非同源时钟的时候,数据的建立和保持时间很难得到保证,我们将面临复杂的时间问题。最好的方法是将所有非同源时钟同步化。使用pld内部的锁项环(pll或dll)是一个效果很好的方法,但不是所有pld都带有pll、dll,而且带有pll功能的芯片大多价格昂贵,所以除非有特殊要求,一般场合可以不使用带pll的pld。 这时我们需要使用带使能端的d触发器,并引入一个高频时钟。
图13 不同源时钟
如图13所示,系统有两个不同源时钟,一个为3mhz,一个为5mhz,不同的触发器使用不同的时钟。为了系统稳定,我们引入一个20mhz时钟,将3m和5m时钟同步化,如图15所示。 20m的高频时钟将作为系统时钟,输入到所有触发器的的时钟端。3m_en 和5m_en将控制所有触发器的使能端。即原来接3m时钟的触发器,接20m时钟,同时3m_en 将控制该触发器使能 ,原接5m时钟的触发器,也接20m时钟,同时5m_en 将控制该触发器使能。 这样我们就可以将任何非同源时钟同步化。
图13 同步化任意非同源时钟
(一个dff和后面非门,与门构成时钟上升沿检测电路)
另外,异步信号输入总是无法满足数据的建立保持时间,容易使系统进入亚稳态,所以也建议设计者把所有异步输入都先经过双触发器进行同步化,详情可参阅这篇文章::are your pld metastable。
小结:稳定可靠的时钟是系统稳定可靠的重要条件,我们不能够将任何可能含有毛刺的输出作为时钟信号,并且尽可能只使用一个全局时钟,对多时钟系统要注意同步异步信号和非同源时钟。