一、FPGA使用的电源类型

FPGA电源要求输出电压范围从1.2V到5V,输出电流范围从数十毫安到数安培。可用三种电源:低压差(LDO)线性稳压器、开关式DC-DC稳压器和开关式电源模块。最终选择何种电源取决于系统、系统预算和上市时间要求。

如果电路板空间是首要考虑因素,低输出噪声十分重要,或者系统要求对输入电压变化和负载瞬变做出快速响应,则应使用LDO稳压器。LDO功效比较低(因为是线性稳压器),只能提供中低输出电流。输入电容通常可以降低LDO输入端的电感和噪声。LDO输出端也需要电容,用来处理系统瞬变,并保持系统稳定性。也可以使用双输出LDO,同时为VCCINT和VCCO供电。

如果在设计中效率至关重要,并且系统要求高输出电流,则开关式稳压器占优势。开关电源的功效比高于LDO,但其开关电路会增加输出噪声。与LDO不同,开关式稳压器需利用电感来实现DC-DC转换。

二、FPGA的特殊电源要求

为确保正确上电,内核电压VCCINT的缓升时间必须在制造商规定的范围内。对于一些FPGA,由于VCCINT会在晶体管阈值导通前停留更多时间,因此过长的缓升时间可能会导致启动电流持续较长时间。如果电源向FPGA提供大电流,则较长的上电缓升时间会引起热应力。ADI公司的DC-DC稳压器提供可调软启动,缓升时间可以通过外部电容进行控制。缓升时间典型值在20ms至100ms范围内。

许多FPGA没有时序控制要求,因此VCCINT、VCCO和VCCAUX可以同时上电。如果这一点无法实现,上电电流可以稍高。时序要求依具体FPGA而异。对于一些FPGA,必须同时给VCCINT和VCCO供电。对于另一些FPGA,这些电源可按任何顺序接通。多数情况下,先给VCCINT后给VCCO供电是一种较好的做法。

当VCCINT在0.6V至0.8V范围内时,某些FPGA系列会产生上电涌入电流。在此期间,电源转换器持续供电。这种应用中,因为器件需通过降低输出电压来限制电流,所以不推荐使用返送电流限制。但在限流电源解决方案中,一旦限流电源所供电的电路电流超过设定的额定电流,电源就会将该电流限制在额定值以下。

三、FPGA配电结构

1.集中式电源结构

对于高速、高密度FPGA器件,保持良好的信号完整性对于实现可靠、可重复的设计十分关键。适当的电源旁路和去耦可以改善整体信号完整性。如果去耦不充分,逻辑转换将会影响电源和地电压,导致器件工作不正常。此外,采用分布式电源结构也是一种主要解决方案,给FPGA供电时可以将电源电压偏移降至最低。

在传统电源结构中,AC/DC或DC/DC转换器位于一个地方,并提供多 个输出电压,在整个系统内分配。这种设计称为集中式电源结构 (CPA),见图1。以高电流分配低电压时,铜线或PCB轨道会产生严重的电阻损耗,CPA就会发生问题。

图1 集中式电源结构

2.分布式电源结构 

CPA的替代方案是分布式电源结构(DPA),见图2。采用DPA时,整个系统内仅分配一个半稳压的DC电压,各DC/DC转换器(线性或开关式)与各负载相邻。DPA中,DC/DC转换器与负载(例如FPGA)之间的距离近得多,因而线路电阻和配线电感引起的电压下降得以减小。这种为负载提供本地电源的方法称为负载点(POL)。

图2 分布式电源结构

四、FPGA的管脚介绍

FPGA引脚分为两类:专用引脚和用户自定义引脚;

专用引脚大概占FPGA引脚数的20%~30%,也就是说其硬件编码都是为了实现专用功能而编写的。

而专用引脚又分为以下3个子类:

电源引脚:接地或阳极引脚(内核或IO)。

配置引脚:用来“下载”FPGA。

专用输入或时钟引脚:它们能驱动FPGA内部的大网线,适合于带有大输出端口(fanout)的时钟和信号。

其它的引脚就是用户引脚了。

1.用户引脚

FPGA的大部分引脚属于“用户引脚”(比如所谓的“IOs",或者"I/Os",或"用户I/Os",或"用户IOs”,或"IO引脚",或……自己理解)。IO代表“输入-输出”。

注意:

用户可以完全自定制用户IO。它们可以被编程作为输入,输出或双向IO(三向缓冲)。每个“IO引脚”被连接$到FPGA内部的IO单元上。这个“IO单元”通过VCCIO(IO加电引脚)引脚来上电。

2.IO簇

通常每个FPGA有很多VCCIO引脚(IO Power pins),都被加同样的电压。但是新一代的FPGA引入了“用户IO组”。可以把IO分为不同的组,每组加各自的电压。这就使FPGA可以用作一个变压转换器了,比如对于开发板部分工作于3.3v,部分工作于2.5v的很有用。(比如cyclone III系列的接DDR2要1.8V的电压)

3.FPGA电源

FPGA通常需要两个电压才能运行:一个是“核心电压”,另一个是“IO电压”。每个电压通过独立的电源引脚来提供。

内核电压(这里简称VCCINT)是用来给FPGA内部的逻辑门和触发器上的电压。该电压随着FPGA的发展从5v、3.3v、2.5v、1.8v、1.5v变的越来越低。核心电压是固定的。(根据所用FPGA的模式来确定)。IO电压(简称VCCIO)是用于FPGA的IO模块(同IO引脚)上的电压。该电压应该与其它连接到FPGA上的器件的电压匹配。

实际上,FPGA器件本身是允许VCCINT和VCCIO相同的(比如VCCINT和VCCIO两种引脚可以被连接在一起)。但是FPGA设计是面向低电压内核和高电压IO的,所以两种电压一般是不相同的。

命名

内部电压Xilinx简称VCC,Altera简称VCCINT;IO电压Xilinx简称VCCO,而Altera简称VCCIO。

五、FPGA功耗分析

外部电源为 FPGA 或者 CPLD 内部和外部正常工作提供电能源。实施电源方案时,设计人员应该明确知道这些供电电源 ( 也称为“轨式电源” ) 的总功率。而且,和器件外部消耗的总功率相比,设计人员还需要考虑器件内部实际消耗的总功率 ( 称为“热功率”或者“耗散功率” ) ,例如,外部输出电容负载和平衡电阻匹配网络的功耗。

器件、输出负载、外部匹配网络 ( 如果有 ) 的总功耗通常包括以下几部分:

待机功耗

动态功耗

I/O功耗

待机功耗来自器件待机模式下的 ICCINT 电流。内核动态功耗来自器件内部开关 ( 内部节点电容冲放电 )。 I/O 功耗来自外部开关 ( 和器件引脚连接的外部负载电容冲放电 )、 I/O 驱动和外部匹配网络 ( 如果有 ) 。

热功耗是器件封装内部实际消耗总功率的一部分,其余部分在外部耗散掉。设计人员在确定器件本身热传导能力 ( 称为热阻 ) 能否满足内部管芯结温正常工作要求时,或者需要铝热沉等其他散热方案来实现更好的热传导性能时,应该考虑器件内部的实际热功耗。一般而言,待机功耗、动态功耗以及部分 I/O功耗组成了总功耗中的实际热功耗。

1.待机功耗

由于泄漏电流的存在,器件在待机时也会消耗能量。待机功耗随管芯大小、温度以及工艺的变化而变化。可以利用器件特征参数来模拟待机功耗,并定义为两类:典型功耗和最大功耗。

Stratix® II 器件使用 90 nm 工艺技术,对功耗和性能进行了优化。和前一工艺技术的器件相比,90 nm 器件由于泄漏导致静态功耗增大,对总功耗有很大的影响。 90 nm 工艺节点的待机功耗比以前的工艺技术更依赖于管芯结温。设计人员应重视降低结温,以便降低总功耗的待机功耗。下面的图 1 是待机功耗和结温的关系。

图1. 待机功耗和结温的关系

2.动态功耗

内部节点改变逻辑状态时会消耗器件内部动态功耗,因为它需要能量对逻辑阵列和互联网络的内部电容进行冲放电 ( 例如,从逻辑 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 功耗分析和优化工具包考虑了所有这些因素进行功耗估算和分析。

3、IO功耗

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 电压稳压器和转换器 ( 指轨式电源 ) 输出功率的一部分,设计人员应考虑外部功率组成。

4.其他功耗要求

设计 FPGA 和CPLD 时,设计人员还应该考虑和总功耗有关的其他几个因素:浪涌电流、配置功耗以及 VCCPD( 仅对Stratix II) 。

4.1 浪涌电流

浪涌电流是器件初始化上电时的电流。在上电阶段,必须为器件提供最低逻辑阵列电流 (ICCINT) ,并维持一段时间。这一持续时间取决于电源提供的电流大小。如果电流较大, VCCINT 能够迅速上升。当电压达到额定值的 90%时,一般不再需要最初的大电流。最大浪涌电流和器件温度成反比。随着器件温度的提高,上电浪涌电流下降 ( 而待机电流会随着温度提高而增大 ) 。

4.2 配置功耗

对于普通的 FPGA ,配置功耗是配置器件时消耗的能量。在配置和初始化阶段,器件需要能量来复位寄存器,使能 I/O 引脚,进入工作模式。上电阶段, I/O 引脚在配置前以及配置期间为三态,以降低功耗,防止在这段时间驱动输出。

FPGA电源设计心得相关推荐

  1. 使用Intel的FPGA电源设计FPGA 供电的常用反馈电阻阻值

    使用Intel的FPGA电源设计FPGA 供电的常用反馈电阻阻值. 当前仅总结使用EN5339芯片的方案 Vout = Ra*0.6/Rb + 0.6 芯片手册推荐Ra取348K,则 3.3V时,取R ...

  2. FPGA设计心得(4)Aurora IP core 的定制详情记录

    文章目录 写在前面 IP核定制页面预览 IP核定制详解 lane width Line Rate GT REFCLK (MHz) INIT clk (MHz) DRP clk (MHz) Datafl ...

  3. Xilinx的FPGA硬件设计一——电源篇

    FPGA最小系统说白了就是设计一个最小系统,其可以作为日后一系列产品的基础,一是可以加快开发流程,二是可以降低开发难度,本次选用的芯片是Xilinx(赛灵思)的7系列(ARTIX)的FPGA. FPG ...

  4. FPGA设计心得(6)Aurora IP核例子简析与仿真(framing版)

    文章目录 背景 定制framing接口的IP核 生成示例工程并分析 GEN模块分析 CHECK模块分析 示例工程仿真 总体仿真 发送模块仿真 接收模块仿真 参考资料 交个朋友 写在最后 工程分享 背景 ...

  5. FPGA逻辑设计回顾(11)FPGA以及PC中的RAM与ROM

    文章目录 前言 RAM以及ROM在计算机中的应用 什么是存储器? 什么是硬盘驱动器? 其他类型的存储器 什么是RAM? RAM的类型 SRAM DRAM 什么是ROM? ROM的类型 掩膜ROM PR ...

  6. FPGA逻辑设计回顾(3)多比特信号上升沿检测的设计方式与陷阱?

    前言 注:本文首发自FPGA逻辑设计回顾(3)多比特信号上升沿检测的设计方式与陷阱? 在总结本文最后的多比特上升沿检测之前,我们先把备用知识讲清楚,摊开来,以免造成模糊不清的默许! 逻辑运算符与位元运 ...

  7. buck变换器设计matlab_2.5V/2A 高质量电源设计

    本文是 21Dianyuan 社区原创技术文章,作者老余,感谢作者的辛苦付出. 一.题目要求 ▶基本指标: 1.输入电压 12V, 输出电压 2.5V,持续输出电流能力不小于 2A: 2.整版使用电容 ...

  8. 瓷片电容、钽电容、电解电容区别---电源设计中的去耦电容应用实例

    瓷片电容.钽电容.电解电容区别---电源设计中的去耦电容应用实例 转自:张飞实战电子 电源往往是我们在电路设计过程中最容易忽略的环节.其实,作为一款优秀的设计,电源设计应当是很重要的,它很大程度影响了 ...

  9. FPGA电源设计方案

    FPGA需要3.3V.2.5V和1.2V 方案1:选用LINEAR:LT1083/84/85 LDO(低压差线性稳压器) LT1083:output current 7.5A LT1084:outpu ...

最新文章

  1. Python第三方包的egg info 是什么东西
  2. 【Java 虚拟机原理】垃圾回收算法 ( Java 虚拟机内存分区 | 垃圾回收机制 | 引用计数器算法 | 引用计数循环引用弊端 )
  3. openresty获取nginx请求头信息
  4. 树莓派 python_树莓派笔记08—Python流水灯
  5. 金色金箔高品质纹理素材,将在你的下一个设计项目中被使用。
  6. Numpy——numpy属性
  7. 关于不执行整个大项目而是执行其中一部分独立文件夹的时候的python运行方法...
  8. Linux tty远程退出,screen 如果程序没结束就退出远程管理终端
  9. MLDN出品JAVA风暴终极的java学习视频
  10. 名字打架小游戏 java_闲暇极品MD5 能用名字打架的小游戏
  11. Python写的网络爬虫程序
  12. 清理windows10系统垃圾文件 bat批处理命令(进阶版)
  13. C语言sin定积分,C语言实现黎曼和求定积分
  14. 驾驶证北京到期满换证  异地期满换领  异地驾驶证到期在北京换证 驾驶证异地换证
  15. 学计算机科学与技术的考研方向,计算机科学与技术考研方向?
  16. 技嘉主板前置面板没有声音的解决
  17. 股市中的马太效应带给我们什么股票道理?
  18. spring中<tx:annotation-driven>标签转为注解@EnableTransactionManagement
  19. 在职研究生(多重继承)
  20. mdadm 创建md 删除md步骤

热门文章

  1. STM32实例——基于STM32开发板实现传感数据采集-DHT11温湿度采集
  2. javascript实用例子大全!
  3. 空压机安全阀行业现状调研及趋势分析报告
  4. 百度盘登录时出现网络异常1的解决方法
  5. validform 的ajax验证,表单验证插件Validform使用笔记
  6. VMware下对Ubuntu进行扩充磁盘大小
  7. cbs app for android,CBSSportsv5.7.0
  8. wsl2-kali基础配置(换源、切换中文、安装完整版、包含无法打开Windows商店的情况下安装wsl等)
  9. 【项目实战】Python基于GARCH模型进行预测特斯拉股票,以及评估金融资产的风险
  10. 关于offsetTop的误解