浅谈FPGA安全启动配置的供电需求

本文主要以Spartan-6 FPGA的主动串行配置模式进行讲解,Spartan-6 FPGA的配置Sequence如图1.1所示。

图1.1Spartan-6 FPGA配置Sequence

图1.1中Setup的第一步:Device Power-Up,就是本文要阐述的,它是整个配置流程的第一步,如果这一步出现问题,后面的就无法正常进行,FPGA就无法完成加载配置。

电源供电需求

Spartan-6 FPGA配置需要VCCO_2、VCCAUX和VCCINT引脚供电,对这些引脚的供电没有特殊的顺序要求。每一个引脚的供电都对应着FPGA内部的一个功能模块,如表1.1所示。

表1.1Power Supplies Required for Configuration
Pin NameDescription
VCCINTInternal core voltage.
VCCAUXAuxiliary power input for configuration logic and other FPGA functions.
VCCO_2Dual-purpose configuration pin output supply voltage. VCCO_2 cannot be 1.2V or 1.5V during configuration.

其中,VCCO_2 和VCCAUX的供电有一定的对应关系,即如果VCCO_2为1.8V,那么VCCAUX就必须是2.5V,如果VCCO_2是2.5V或者3.3V,那么VCCAUX可以是2.5V或者3.3V中的任意一个。为保证FPGA能够成功正常上电,Xilinx对表中的三个电源供电有如下两个要求:

1、电源供电必须在指定的ramp time范围内单调上升至稳定电压;

2、在电源供电达到期望的阈值电压之前,电源供电不能有dip出现。

每个供电电压的ramp time如表1.2所示。

表1.2Power Supply Ramp Time
SymbolSpeed Grade Ramp Time Units
VCCINT-3,-3N,-2 0.2 to 50.0 ms
VCCAUXALL 0.2 to 50.0 ms
VCCO_2ALL0.2 to 50.0 ms

如果无法保证上面的供电要求,那么我们就必须在系统供电达到要求的操作电压之前将INIT_B引脚或者PROGRAM_B引脚一直拉低。

供电时序要求

一般来说,对于Spartan-6 FPGA的供电是没有特殊的时序要求的,但是如果采用的是主动串行的SPI FLASH配置的话就对供电时序有要求,而且这个供电时序是必须要特殊关注的。

Spartan-6 FPGA的上电时序图如图1.2所示。

图1.2中的时序参数如所示。

表1.3 时序参数
SymbolDescription Speed GradeUnits
-3-3N-2-1L
TPLPROGRAM_B Latency 4 4 45 ms,Max
TPORPower-on reset (50 ms ramp time)5/30 5/34 5/40 5/40 ms, Min/Max
Power-on reset (10 ms ramp time)5/255/295/355/40 ms, Min/Max
TPROGRAMPROGRAM_B Pulse Width 500 500 500ns, Min