APP下载

基于ATE的FLASH型FPGA测试方法研究

2018-05-28中国航天科工集团第三研究院第三三研究所张金凤唐金慧马成英

电子世界 2018年10期
关键词:低功耗时钟器件

中国航天科工集团第三研究院第三〇三研究所 张金凤 唐金慧 马成英

1.引言

FPGA按照工艺来分,大致可分为SRAM型、FLASH型和反熔丝型FPGA。SRAM型FPGA速度快且具有可重编程能力;但由于掉电时无法保存数据,因此需要增加一个昂贵的配置芯片,功耗较大[1]。反熔丝型FPGA具有高抗干扰性和低功耗的特点,不过只能一次性编程。FLASH 型FPGA具有非易失性和重配置性,且在低功耗、安全性方面具有很大的优势;但较之SRAM型它的速度慢,写入周期长。不过FLASH型FPGA非易失性、低功耗、安全性的特性也赢得了越来越多用户的亲睐。随着FLASH型FPGA在航空航天领域及武器型号中广泛应用,其可靠性问题变得越来越突出。因此对FLASH型FPGA的测试和可靠性试验尤为重要,对其测试方法开展研究也是非常必要的。

2.FLASH型FPGA结构特点

FLASH型FPGA在工艺上采用了先进的FLASH开关。FLASH开关仅由两个晶体管组成:一个用于对此开关进行擦除、编程、校验等操作,另一个用于开关的选通。它具有占用硅片面积小、低阻抗和容性负载、非易失性等特点,其内部结构如图1所示。它由两个具有悬浮特性的MOS晶体管保存可编程信息,它通过充电或者放电来决定两个金属线路之间的开关状态。其实对FPGA进行编程就是对这些开关进行控制,实现连线的过程[1]。

图1 FLASH开关结构

FLASH型FPGA的开关结构决定了它具有以下独特的性能:一、掉电非易失性。FPGA一旦被编程,配置数据就成为其结构的一个固有部分,系统上电时不需要通过外部的配置芯片加载数据。二、低功耗。由于FLASH型FPGA不需要配置过程且上电也不需要很大的启动电流,所以没有配置功耗和上电功耗;从开关功耗上分析,由两个晶体管构成FLASH型FPGA较之由六个晶体管构成SRAM型FPGA开关消耗要低很多。另外,FLASH型FPGA有无可挑剔的稳定性,它对于固件错误有很好的免疫作用。

在诸多的FPGA生产厂家中,ACTEL是世界上主流的FLASH型FPGA制造商,在非易失性FPGA领域处于领先地位。本文的测试方法正是基于ACTEL公司ProASIC3系列FLASH型FPGA,针对其结构特点和工作原理,对其内部资源进行分别测试。

3.测试方法

ACTEL公司ProASIC3系列FLASH型FPGA主要包含以下部分模块:输入输出模块(IOB)、可编程逻辑单元(Tiles)、内嵌RAM模块(BRAM)、时钟调整电路模块(CCC)[2]。另外,有些系列FPGA还包含1kbit FlashROM。测试中将根据器件的内部电路结构来设计编程,分别针对这些模块设计配置程序,每个模块对应的配置程序将模块中的资源最大限量的考察到。使用硬件编程语言编写各工程的设计输入,然后将设计输入编译仿真,形成可下载文件及仿真波形,将仿真波形加工整理为测试系统可用测试向量。

3.1 输入输出模块(IOB)测试

IOB是FPGA中的一项重要资源。它可以提供给系统足够的输入输出来实现用户的设计。而且由于可编程器件特性中I/O的电压标准是可以配置的,所以可以实现系统中不同电压标准间设备的通信功能。ACTEL公司ProASIC3系列的FPGA I/O为双向管脚,测试时要考虑到所有I/O管脚双向工作的能力。我们在进行IOB测试时,将其平均分为两组,通过方向控制端(DIR)控制其分别做输入管脚或输出管脚,对IOB功能进行考察。

3.2 可编程逻辑单元(Tiles)测试

ACTEL公司ProASIC3系列FLASH型FPGA每个逻辑单元Tile有3个输入1个输出,可以配置成两种模式。一种是带清除和置位的锁存器或触发器模式,这种模式比较简单、容易实现;另外一种是LUT模式,如ProASIC3系列就可以实现这种模式。为了将器件中的Tile进行遍历性测试,本文决定利用器件的若干个Tile设计一个最小的逻辑单元Basic_Tiles,此最小逻辑单元能够实现输出等于输入,便于测试过程中进行跟踪测试;再将上一个Basic_Tiles的输出作为下一个Basic_Tiles的输入,如此进行多次级连组成一个阵列。这样做的优点是占用了很少的I/O管脚即测试了器件95%以上的Tiles。

以LUT模式为例,我们简单来描述一下逻辑单元Tiles遍历测试的一个过程。

我们首先设计一个最小逻辑单元Basic_Tiles。由于其LUT为3输入结构,因此本文设计的最小逻辑单元为一个3输入3输出的逻辑器件,利用异或逻辑实现此最小逻辑单元的设计,具体如下:一个3输入异或结构假如为Y=A 1^A2^A 3,若要多项式在经过一个异或门成为A 1、A2或A3,则需要A1=A1^0,即A1=A1^A2^A2^A3^A3=Y^A2^A3,这样占用2个3输入LUT,利用2次异或完成了A1的输出,同理可得输出A 2=Y^A 1^A 3、A 3=Y^A 1^A 2。这样可以有效的占用了4个LUT,即4个Tiles实现了最小逻辑单元Basic_Tiles的设计。如图2所示。之后我们将Basic_Tiles进行多次级联就可以实现所有逻辑单元Tiles的测试。

图2 LUT模式最小逻辑单元RTL示图

3.3 内嵌RAM模块(BRAM)测试

内嵌RAM是FPGA中的一项重要资源,ACTEL FLASH型FPGA不同系列不同型号内嵌的RAM数目不等,但结构和功能类似,具有灵活的可配置端口。如ProASICPLUS系列端口可配置256*9、512*9、512*18等多种模式[3];ProASIC3系列端口可配置为256*18、512*9、1K*4、 2K*2、4K*1等多种模式;支持全双口工作模式,可配置为单口RAM、简单双口RAM、FIFO等多种模式。

ACTEL公司ProASIC3系列FLASH型FPGA含有的内嵌RAM数量多,比如A 3P1000中含有32个4608BitRAMBlock。但是受器件I/O口数目限制,无法同时将所有的RAM均连接出来进行测试;因此在测试时,我们利用软件开发工具将内嵌RAM配置成以上模式中的一种,并将所有的存储器进行并联,之后将配置好的内嵌RAM预装载数据。这样的设计可以在写入一个存储器时能同时对所有并联的存储器进行相同内容的写入,只是在内容验证时需设计片选控制端以决定哪个RAM内容输出到I/O口。

3.4 时钟调整电路(CCC)测试

ACTEL不同系列不同型号 FLASH型FPGA含有的CCC个数不同,种类也不尽相同,但基本原理相似。具有以下特点:对时钟信号进行调整,可实现对输入时钟的倍频或分频输出,可编程的延时、提前或相移等功能。对于CCC测试,我们将根据每种系列每种型号的特点利用软件开发工具生成IP核来设计 ACTEL 型号所包含的CCC。

例如ProASIC3系列中A3P1000,它包含6个CCCS,其中1个CCC带有PLL,其他5个CCCS实现简单时钟延迟。输入时钟频率范围是1.5MHz~350MHz,输出时钟频率范围是0.75MHz~350MHz。我们设定好输入输出时钟频率等参数生成PLL和CCC 功能块后,在测试工程中调用功能块即可。测试工程编译后的RTL示图如图3所示。从图中可看出,功能单元的覆盖率为100%。

3.5 1kbit FlashROM测试

ACTEL公司ProASIC3系列FLASH型FPGA含有专门的非易失的FlashROM存储器,其大小为1kbit。通过JTAG可以对FlashROM进行读写和修改操作。只有FLASH结构的FPGA才含有这种非易失性的存储器。

对于FlashROM的测试,我们利用SmartGen软件对其所有的字节进行设置,并写入数据,生成FlashROM核。在测试工程中调用FlashROM核,编译仿真后生成下载文件进行测试。

图3 锁相环测试的RTL示图

3.6 测试图形向量的生成

在测试时,自动测试系统给定是由0和1组成的测试图形,也就是二进制代码。这些代码的获得主要通过软件仿真来实现。对以上各个模块的设计全部依托于ACTEL FPGA设计开发软件IDE,并使用Verilog HDL硬件语言编写测试工程代码。我们根据所设计的各个功能测试工程,进行ModelSim仿真生成波形文件。将波形文件保存成二进制代码数据文件,然后再按照ATE可识别的图形向量文件格式整理,即可生成测试程序可调用的测试图像向量。

4 结束语

以上内容是对基于ACTEL公司ProASIC3系列FLASH型FPGA基本结构功能测试的简单介绍。ProASIC3系列器件的基本结构和测试原理相似,不同的是在一块芯片中集成的规模大小不同,运行速度高低不同,没有什么质的变化。而近几年来,FLASH型的FPGA有了一个很大的发展,从结构到性能都上了一个大的台阶。如Fusion系列集成了12位A/D、ARM Cortex-M 3、RTC等功能部件;IGLOO系列具有独特的Flash*Freeze睡眠模式,在该模式下最低功耗可达5uW;IGLOO+系列提供了超多的I/O口、支持斯密特触发器输入、热插拔等特点;Nano系列具有3mm×3mm的超小封装,业界最低功耗的FPGA,最低功耗可达2uW。这些FPGA规模、性能和速度的不断提高给测试程序开发人员也带来了新的挑战。

[1]周立功.单片机ACTEL系列FPGA的特点[J].电子产品世界,2009.

[2]Microsemi,Pro ASIC3 Flash Family FPGAS Datasheet[OL].2016.https://www.microsemi.com.

[3]Microsemi,Pro ASICPLUS Flash Family FPGAS Datasheet[OL].2010.https://www.microsemi.com.

猜你喜欢

低功耗时钟器件
别样的“时钟”
一种高速低功耗比较器设计
古代的时钟
有趣的时钟
时钟会开“花”
旋涂-蒸镀工艺制备红光量子点器件
面向高速应用的GaN基HEMT器件
一种加载集总器件的可调三维周期结构
高分辨率遥感相机CCD器件精密热控制
ADI推出三款超低功耗多通道ADC