功耗结构设计

结构功耗优化方法

主要讨论FPGA中结构的功率优化方法。
相对于专用集成电路(ASIC),FPGA是耗电的器件,不适合超低功率设计技术。(CPLD有低功耗器件)。
在CMOS技术中,动态功耗与门和金属引线的寄生电容充放电有关。,电容中消耗电流的公式:

I= V * C *f

公式中I是总电流,V是电压,c是电容,f是频率。
因此,为了减少驱动电流,必须减少这三个关键的参数。在FPGA设计中,电压通常是固定的,因此,只能控制电容c和频率f.电容c直接与随时被触发的门的数量以及里阿尼金额这些门的布线长度有关,频率f直接与时钟频率有关。所以所有降低功耗的技术都瞄这两个分量之一。

1.时钟控制

在FPGA中大多数动态功耗直接与系统时钟的触发有关,因此在进行同步数字电路中动态禁止特定区域的时钟,成为降低设计最有效和最广泛的技术。因此在设计的时候可以使用触发器的时钟使能引脚,以及全局时钟的多路选择器,例如xiilinx器件的BUFGMUX元件。当然你也可以自己设计时钟切换电路,但应该警惕自己设计中跨时钟域,以及毛刺的问题。

时钟选通的弊端

下图是一个简单的时钟选通设计
在这里插入图片描述
这种时钟选通是减少动态功耗的直接手段,但是在实现和时序分析方面会产生困难。时钟在FPGA中要比其在ASIC中的地位更加神圣,对FPGA设计者,选通时钟会引入新的时钟区域,后续增加时序分析约束的困难

2 时钟偏移

时钟偏移在时序设计中是十分重要的概念。
如图:
在这里插入图片描述
在FPGA中提供低偏移资源,可以保证时钟信号将对时钟输入尽可能的匹配(几个皮秒内),如果引入与门进行时钟使能,导致时钟先必须从低偏移的全局资源中移去,并布线到选通逻辑。从而导致时钟偏移较大。因此在FPGA设计时,尽量选择厂商先进的时钟缓冲技术。不要采用带逻辑单元的时钟选通逻辑。

3输入控制

一个常常被忽视的降低功率的技术是输入斜率。CMOS输入缓冲器在上拉和下拉晶体管二者同时被导通的条件下,可以产生超电流的驱动。
在一个系统中,必须仔细的考虑转换时间和转换瞬间晶体管的行为。例如在一个CMOS反相器有0V的输入和VDD输出,当输入从0转换到VDD,但输入一通过门限,NMOS晶体管就离开截止区,进入饱和区。在这个转换的开始阶段,PMOS器件仍在线性区,所以电流开始在VDD和地之间流过。随着输入的上升,输出下降,当NMOS的漏极跌落到低于门电路的门限电压,NMOS晶体管进入线性区,PMOS管进入饱和区,然后截止。因此为了使功耗最小化,尽量使输入信号的上升沿和下降沿最小,减小两个晶体管在饱和区的时间l
另外悬空的输入可能比外部驱动的输入存在甚至更差。

4减少供电电压

虽然降低供电电压通常不是期望的选择,但是它对于动态功耗有着惊人的影响,还是值得提到这个问题。在一个简单的电阻中的功耗将随着电压的平方减弱,因此降低FPGA电源的供电电压接近最小要求,可以达到显著的节省功耗。但是,降低这个电压将减小系统的性能。如果采用这个方法,要确保时序分析考虑到最低供电线上的电压对最坏条件的最大时序的影响。
动态功耗随着核电压的平方减弱,但是降低电压对性能有负面的影响

4双沿触发触发器

由于功耗是与信号的触发频率成正比的事实,高扇出网线的每个触发功能数量最大化是期望的。最高扇出的网线是系统时钟,因此任何降低这个时钟频率的技术对动态功耗有着惊人的影响。双边触发的触发器提供在时钟的两个沿而不是一个沿上传播数据,因此设计者运行的始终频率只需要达到确定程度功能和性能频率的一半。
一个简单的双边沿触发器

module dualege(
input clk,datain,
output reg dataout
);
reg ff0 ff1;
always @(posedge clk)
ff0 <= datain;
always @ (posedge clk or negedge clk)begin
ff1<=ff0;
dataout <= ff1;
end
endmodule
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值