外部电源为 FPGA 或者 CPLD 内部和外部正常工作提供电能源。实施电源方案时,设计人员应该明确知道这些供电电源 ( 也称为“轨式电源” ) 的总功率。而且,和器件外部消耗的总功率相比,设计人员还需要考虑器件内部实际消耗的总功率 ( 称为“热功率”或者“耗散功率” ) ,例如,外部输出电容负载和平衡电阻匹配网络的功耗。
器件、输出负载、外部匹配网络 ( 如果有 ) 的总功耗通常包括以下几部分:
- 待机
- 动态
- I/O
待机功耗来自器件待机模式下的 ICCINT 电流。内核动态功耗来自器件内部开关 ( 内部节点电容冲放电 )。 I/O 功耗来自外部开关 ( 和器件引脚连接的外部负载电容冲放电 )、 I/O 驱动和外部匹配网络 ( 如果有 ) 。
热功耗是器件封装内部实际消耗总功率的一部分,其余部分在外部耗散掉。设计人员在确定器件本身热传导能力 ( 称为热阻 ) 能否满足内部管芯结温正常工作要求时,或者需要铝热沉等其他散热方案来实现更好的热传导性能时,应该考虑器件内部的实际热功耗。一般而言,待机功耗、动态功耗以及部分 I/O 功耗组成了总功耗中的实际热功耗。
待机功耗
由于泄漏电流的存在,器件在待机时也会消耗能量。待机功耗随管芯大小、温度以及工艺的变化而变化。可以利用器件特征参数来模拟待机功耗,并定义为两类:典型功耗和最大功耗。
Stratix® II 器件使用 90 nm 工艺技术,对功耗和性能进行了优化。和前一工艺技术的器件相比,90 nm 器件由于泄漏导致静态功耗增大,对总功耗有很大的影响。 90 nm 工艺节点的待机功耗比以前的工艺技术更依赖于管芯结温。设计人员应重视降低结温,以便降低总功耗的待机功耗。下面的图 1 是待机功耗和结温的关系。
图1. 待机功耗和结温的关系

Stratix II 器件使用低泄漏晶体管技术,尽可能降低待机电流产生的功耗,从而降低 90 nm 的总功耗 ( 请参考 90 nm 芯片功耗优化 的详细信息 ) 。
动态功耗
内部节点改变逻辑状态时会消耗器件内部动态功耗,因为它需要能量对逻辑阵列和互联网络的内部电容进行冲放电 ( 例如,从逻辑 0 变到逻辑 1) 。内核动态功耗包括导线功耗和逻辑单元 (LE) 功耗 ( 或者 Stratix II 的自适应逻辑模块 (ALM))。 LE/ALM 功耗来自内部节点电容冲放电以及内部电阻单元的电流。导线功耗来自每个 LE/ALM 驱动外部导线电容时的冲放电电流。内核动态功耗主要来自以下结构单元:
- RAM 模块 (M512、 M4K 和 M-RAM)
- DSP 乘法器模块
- 锁相环 (PLL)
- 时钟树网络
- 高速差分接口 (HSDI) 收发器
上面列出的每个单元结构总电流之和与 VCCINT (Stratix II 为 1.2V) 相乘得到动态总功耗:
动态功耗 = VCCINT × Σ ICCINT (LE/ALM, RAM, DSP, PLL, Clocks, HSDI, 导线 )
得到多个电容之和后,采用等价 ( 集总 ) 电容值计算动态功耗。例如,信号驱动输入或者输出时,对引脚、走线和封装电容求和。如果明确了内部开关频率,这一近似方法是足够的。 Altera 利用近似曲线 ( 基于特征数据 ) 来确定内部开关频率,有效地估算大部分设计拓扑的动态功耗。估算器件资源的总功耗时,应考虑资源的最大开关频率、估算的触发因子、下游逻辑扇出,以及通过器件特征参数获得的资源系数等。 Altera 的 PowerPlay 功耗分析和优化工具包考虑了所有这些因素进行功耗估算和分析。
I/O功耗
I/O 功耗是 VCCIO 功耗,主要来自器件输出引脚连接的外部负载电容、阻抗模式输出驱动电路以及外部匹配网络 (如果有) 的冲放电电流。器件 I/O 功耗按下式计算:
I/O power功耗 = (有源输出驱动数 × 功耗系数) +
0.5 × (管芯、封装走线、引脚和输出负载电容之和) ×
I/O 标准电压摆幅 × fMAX × (触发因子/100) × VCCIO
有源输出驱动数包括有源双向输出。除了上面计算的 I/O 功耗,还有其他因素影响 I/O 功耗,包括同时由 VCCIO 供电的 I/O 缓冲单元。下面的图 2 是 I/O 缓冲模型。
图2. I/O缓冲模型

如前所述, FPGA 或者 CPLD 内部要实际消耗一部分 VCCIO 功耗,外部匹配电阻网络以及输出电容负载消耗了另一部分能量。设计人员在规划散热管理方案时,应考虑 VCCIO 的内部功耗 ( 器件本身或者通过外部热沉 ) 。作为 VCCIO 电压稳压器和转换器 ( 指轨式电源 ) 输出功率的一部分,设计人员应考虑外部功率组成。从 Stratix II 器件开始, Altera的PowerPlay技术报告相对于总电源的热功耗。以后的器件也将包括这一 PowerPlay 技术报告功能。
其他功耗考虑
设计 FPGA 和 CPLD 时,设计人员还应该考虑和总功耗有关的其他几个因素:浪涌电流、配置功耗以及 VCCPD ( 仅对 Stratix II) 。
浪涌电流
浪涌电流是器件初始化上电时的电流。在上电阶段,必须为器件提供最低逻辑阵列电流 (ICCINT ) ,并维持一段时间。这一持续时间取决于电源提供的电流大小。如果电流较大, VCCINT 能够迅速上升。当电压达到额定值的 90%时,一般不再需要最初的大电流。最大浪涌电流和器件温度成反比。随着器件温度的提高,上电浪涌电流下降 ( 而待机电流会随着温度提高而增大 ) 。
配置功耗
对于普通的 FPGA ,配置功耗是配置器件时消耗的能量。在配置和初始化阶段,器件需要能量来复位寄存器,使能 I/O 引脚,进入工作模式。上电阶段, I/O 引脚在配置前以及配置期间为三态,以降低功耗,防止在这段时间驱动输出。请参考 Stratix II 器件手册 第 2 卷的 配置 Stratix II 器件 (PDF) 一章,了解 Stratix II 器件配置方案以及 VCCPD 电压配置引脚的详细信息。
VCCPD
VCCPD 是输出预驱动电路的独立小负载电流供电电源,它还用于 JTAG I/O 缓冲和配置。 VCCPD 应连接至 3.3 V ,以便对驱动配置输入和 JTAG 引脚的 3.3 V / 2.5 V 缓冲进行供电。请参考 Stratix II 器件手册 的 直流和开关特性 (PDF) 一章,了解 VCCPD 规范要求。
