功耗结构设计概念总结-FPGA学习笔记(八)


功耗是数字设计的主要物理特性之一,相比较于ASIC,FPGA是耗电的器件,不适合低功耗设计。本节讨论一般FPGA设计功耗最大化的技术。

在CMOS技术中,动态功耗与门和金属引线的寄生电容充放电有关。
I = V ∗ C ∗ f , I 是 总 电 流 , V 是 电 压 , C 是 电 容 , f 是 频 率 I=V*C*f, I是总电流,V是电压,C是电容,f是频率 I=VCfIVCf
在FPGA设计中,电压是固定的,降低功耗的技术与C和f有关。

1.1 时钟控制

利用DFF的时钟使能引脚,或利用全局时钟的多路选择器(BUFGMUX)。时钟选通是减少动态功耗的直接手段。

对于FPGA设计来说,选通时钟会引入新的时钟区域,对于时序分析会产生困难。

1.1.1 时钟偏移

选通时钟会带来一定组合逻辑延时,导致时钟到达前后两个DFF的时间不同,有可能导致逻辑某时失效。

1.1.2 控制偏移

在这里插入图片描述

通过选通门的延时(dG)加上布线延时将比通过逻辑的延时(dL)大,在FPGA仿真或许并不会出现问题,但是实际上板测试会出现问题。

实现和分析工具必须给出一组约束,或者使用FPGA默认选通时钟的BUFGMUX。

1.2 减少供电电压

一般功耗随着电压的平方减少,降低FPGA电源的供电电压接近最小要求的电压。

1.3 功耗主要来源

1、动态功耗 2、静态功耗:漏电,PN结反向偏置电流,栅极漏电流。

1.4 减少功耗常用技术
  • clock gating,把不用的功能模块的时钟信号关闭。ICG: Intergated Clock Gating Cell
  • 电压域和动态电压频率调节,芯片分成不同的电压域,挑战需要处理跨电压域信号。采用Level Shifter实现。
  • 根据计算任务负荷动态调整电压和频率至能满足需求的最低程度,称为DVFS。
  • Power Gating用来减少静态电流。
1.5 低功耗架构
  • 并行化(parallelism)和流水线(pipelining)
  • 总线编码(bus encoding)给总线上的数据编码通常有助于减少总线上的功耗。
    1、反向编码,例如传输0000->1110,会有3个bit跳变,对第二个数据取反操作,就变成0000->0001,4个bit的总线最多同时有两个bit跳变,具体还需要反向条件的算法。
    2、 异或编码,针对特定的转换率很高的总线。
  • Memory的功耗密度通常低于Logic,leakage控制也比较规范化,有同时两种方案的话优先增加memory.
  • 异构计算架构(Heterogeneous Computing),专用型更合适。
参考文档

【1】Kilts S . 高级FPGA设计: 结构、实现和优化[M]. 机械工业出版社, 2009.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Paul安

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值