FPGA 重复配置和测试的实现

发布者:JoyousJourney最新更新时间:2011-08-16 关键字:FPGA  重复配置  PCI 手机看文章 扫描二维码
随时随地手机看文章
   

    从制造的角度来讲,FPGA测试是指对FPGA器件内部的逻辑块、可编程互联线、输入输出块等资源的检测。完整的FPGA测试包括两步,一是配置FPGA、然后是测试FPGA,配置FPGA是指将FPGA通过将配置数据下载编程使其内部的待测资源连接成一定的结构,在尽可能少的配置次数下保证FPGA内部资源的测试覆盖率,配置数据称为TC,配置FPGA的这部分时间在整个测试流程占很大比例;测试FPGA则是指对待测FPGA施加设计好的测试激励并回收激励,测试激励称为TS。

    通常来说,要完成FPGA内部资源的完整测试需要针对不同的待测资源设计多种配置图形,多次下载到FPGA,反复施加激励和回收测试响应,通过对响应数据的分析来诊断故障。因此,用于FPGA测试的仪器或系统的关键技术在于:如何加快单次配置的时间,以节省测试过程中的配置时间开销;如何实现自动重复配置和测试,将FPGA较快速度的在线配置和快速测试结合起来。

    由于一般的集成电路自动测试仪ATE为通用IC测试设计,但FPGA测试有上述特殊性,在芯片功能测试之前必须对其进行特定的配置,否则芯片是不具备内部电路结构的,内部资源将无法测试,而通用的ATE要完成测试步骤中的配置功能时,需要以人工或通过电脑专门编程修改配置数据生成测试系统可执行的测试激励形式进行配置,且如果配置数据较多,这个转换过程将可能比较复杂,易用性不强,无法高效地用于FPGA器件的测试中,需要对FPGA测试设计专用的测试平台以满足其配置测试需求。

    我们设计的系统实现了快速重复配置和测试的功能,配置数据可以直接引用EDA软件生成的位流文件而不需要像ATE一样转换成繁杂的测试激励形式,相较于ATE有一定的优势,对FPGA测试有一定的使用价值。

FPGA可重复配置和测试系统结构概述

系统框图如图1所示。

图1 可重复配置测试系统结构框图

    系统功能的实现包括软件和硬件两部分。硬件部分包含PCI桥接芯片、FPGA1中的数据接口模块、配置模块、测试模块和被测FPGA。软件部分包含对实现FPGA配置部分的代码和实现FPGA测试部分的代码。FPGA1中的各硬件模块通过EDA软件以JTAG接口固化FPGA1中,其中FPGA1中的配置模块负责接收来自PC方软件发送的配置数据,并产生对被测FPGA的配置时序,完成配置步骤,测试模块负责发送测试激励和回收被测FPGA的响应数据,等待PC方软件的回收。

系统软硬件交互流程

    整个系统通过软硬件的数据交互实现对被测FPGA的自动配置和测试的流程,软硬件交互的流程从图2可以体现:系统启动后,首先需要开始对被测FPGA进行数据配置,由软件向硬件发送配置开始指令,硬件接收指令后对被测FPGA产生配置开始的时序,告诉被测FPGA准备接收配置数据。当软件查询到配置模块中的状态寄存器值代表等待数据时开始发送配置数据。配置数据发送完成后,软件通过读取配置模块的状态寄存器值判断配置是否成功,决定是否可以开始测试。如果配置成功,软件则开始向被测FPGA发送测试激励数据并读回测试响应保存在电脑中,由软件对测试响应进行分析决定是否需要进行下一次配置和测试流程。如果需要,在一定的延时之后软硬件将回复初始状态,并选择新的配置数据和测试数据,开始新一轮的配置后测试流程。

图2 FPGA芯片自动重复下载自动测试系统软硬件交互流程图

    软硬件数据交互的通路是PCI总线,软件向FPGA1发送指令或数据时,软件通过PCI应用编程接口函数将数据放到PCI总线上,PCI桥接芯片将较为复杂的PCI接口信号转化为相对简单的Local Bus数据信号,由FPGA1中的接口模块接收并产生相应的动作。而软件向FPGA1读取数据的通路则相反。图3和图4分别是软件在VC++6.0环境中断点调试发送指令和软件向FPGA1发送指令时由嵌入式逻辑分析仪SignalTAP II捕捉到的指令数据和接口模块波形。

图3 VC++6.0环境中断点调试指令发送

图4 嵌入式逻辑分析仪SignalTAP II波形

图4中ADS_N、BLAST_N、LWORD_N、LHOLD、LHOLDA是Local Bus的接口信号,ConfigEnd和ConfigStart是分别代表配置结束和配置开始的标志寄存器,LA是接口的地址信号,用于模块中控制寄存器的寻址,LD是接口的数据信号,用于指令数据的发送和数据的回收。

    以配置开始指令的发送为例,从图3图4两图中可以看出软硬件交互过程中的指令发送方式,在VC++中单步调试,发送一个开始指令0x01到配置命令寄存器地址0x01,通过硬件模块的接口动作,用嵌入式存储器SignalTap II中捕捉到LA的数据为1h,LD上的数据为1h后ConfigStart寄存器置高,配置开始。

配置速度测试实验

    软硬件具体方案设计完毕后,软件在Visual C++6.0环境下实现并调试。硬件在QuartusII7.1软件下编译。

    为了对比基于PCI总线的FPGA高速配置方案与基于ByteBlasterII JTAG下载电缆的速度性能,首先使用QuartusII7.1软件采用JTAG方式对FPGA2配置5次,计算每次下载所示时间,得到如表1中所示的数据;再使用本系统中基于PCI总线的配置功能对FPGA2配置5次,软件会自行计算总的下载时间,得到如表1中所示的数据:

从表1的数据对比中可以看到,基于PCI总线的自动下载配置方式要比基于JTAG电缆的下载配置方式提高超过20倍的速度,如果使用基于JTAG电缆对某大容量的FPGA下载需要近20分钟的话,使用PCI下载方式则只需不到1分钟的下载时间,具有明显的速度优势,大大节省了FPGA测试中的数据配置时间。

总结

该FPGA芯片测试平台具有以下特点:

(1)针对FPGA测试的特点:需要重复对待测FPGA配置,设计了FPGA在线配置模块和自动测试模块,从概念上初步实现了自动重复下载和重复测试的功能,为FPGA自动化测试寻找到一个好方法;

(2)利用软件的灵活性提高了测试系统中具有可观察性好和可控制性强的优势;利用硬件结构上并行度高、速度快的优势提高了测试的效率;

(3)相较于专业的ATE设备,该系统软件可控性更强,配置数据更方便。

关键字:FPGA  重复配置  PCI 引用地址:FPGA 重复配置和测试的实现

上一篇:可实现快速锁定的FPGA片内延时锁相环设计
下一篇:Xilinx Zynq-7000 EPP为创新开启新时代

推荐阅读最新更新时间:2024-05-02 21:32

基于FPGA的扩频测距快速捕获仿真研究
  距离测量是测试技术中的一项基本测试技术,其几乎贯穿于工程实践的每个领域。在军事航天领域,由于其特殊的需求,对测距系统的量程、实时性和精度要求越来越高,而扩频测距由于其抗干扰能力强、精度高、作用范围广、隐蔽性好、适应性强、全天候等优势,在测距系统中得到了重视。   扩频测距也称伪码测距,它是采用一个较长周期的PN码序列作为发射信号,将它与目标反射或转发回来的PN码序列的相位进行比较,即比较两个码序列相差的码片数,从而看出其时间差,换算出发射机与目的地之间的距离。如果码片选得很窄,即码速率做得很高,那么就可以完成高精度的测距。但随着码速率的提高和码周期的加长,传统的捕获时间将达到不可容忍的地步,所以需要考虑快速捕获算法。   
[嵌入式]
基于<font color='red'>FPGA</font>的扩频测距快速捕获仿真研究
基于FPGA的四阶IIR数字滤波器
摘要:采用FPGA实现四阶IIR数字滤波器,通过两个二阶节级联构成数字椭圆低通滤波器。通带内波纹小于0.1dB,阻带衰减大于32dB。 关键词:四阶 IIR 椭圆滤波器 补码阵列乘法器 常用的数字滤波器有FIR数字滤波器和IIR数字滤波器。FIR数字滤波器具有精确的线性相位特性,在信号处理方面应用极为广泛,而且可以采用事先设计调试好的FIR数字滤波器IP Core来完成设计,例如Altera公司提供的针对Altera系列可编程器件的MegaCore,但是需要向Altera公司购买或申请试用版。另外,对于相同的设计指标,FIR滤波器所要求的阶数比IIR滤波器高5~10倍,成本较高,而且信号的延迟也较大。IIR滤波器所要求的阶数不仅比F
[半导体设计/制造]
浅析DSP与FPGA两大市场的发展和关系
  随着模拟IC市场中众多垂直细分行业的飞速发展,传统DSP器件遭遇了各种替代性信号处理平台的竞争,FPGA即为典型代表。凭借高密度、低功耗和低成本的优势,FPGA不仅在通信、消费类、嵌入式等广泛领域中行使DSP的职能,并且已经快速渗透到诸多新兴应用领域之中。   尽管FPGA在某些应用领域中可以取代DSP,但是FPGA并不会彻底颠覆现有格局。来自全球领先的高性能信号处理解决方案供应商ADI公司DSP亚洲业务区域经理陆磊先生表示,未来FPGA与DSP更多是协同处理关系,由于双方的可编程,重用性和算法升级都有共通性,因此,使用DSP或FPGA都能实现更低功耗和更高性能。   ADI公司DSP亚洲业务区域经理陆磊先生认为,DSP与FP
[嵌入式]
SEP3203处理器的FPGA数据通信接口设计
SEP3203处理器是由东南大学国家专用集成电路系统工程技术研究中心设计的16/32位RISC微控制器,面向低成本手持设备和其他通用嵌入式设备。该处理器内嵌ARM7TDMI处理器内核,为用户提供了面向移动终端应用的丰富外设、低功耗管理和低成本的外存配置,整个芯片可以运行在75 MHz。数据通信系统使用的主要功能模块如下:20 KB片上零等待静态存储器(eSRAM);外部存储器接口控制器(EMI);中断控制器(INTC);DMA控制器(DMAC)。 系统中使用的FPGA为Altera公司的Cyclone系列中的EP1C6Q240C8,拥有丰富的I/O资源和逻辑资源,外部接口遵循SRAM时序。它主要负责提供信号的A/D采样频率,并将A
[应用]
采用Cyclone FPGA,实现智能电网自动化
要实现对新的或者更新后的智能电网的最优控制,需要端到端通信和高效的供电网络,特别是传输和分配(T&D)子站。为能够支持自动化,设备应具有监视和控制功能,确保能够实时高效的管理电网,满足峰值负载要求。Altera FPGA技术在复杂智能电网辅助支持系统中扮演了关键角色。   典型子站自动化体系结构如下图所示:    图1.典型子站自动化体系结构   在子站和公用设施自动化应用中,以太网承载IEC 61850的IEC 62439-3 Clause 4并行冗余协议(PRP)和Clause 5高可用性无缝冗余(HSR)标准很快成为智能电网系统中高可用性网络的基础。设计人员在处理必须实时支持关键任务系统并具有较长生命周期的子站设备时,
[模拟电子]
采用Cyclone <font color='red'>FPGA</font>,实现智能电网自动化
莱迪思发运首批低成本、低功耗LatticeECP4 FPGA样片
    21ic讯 莱迪思半导体公司日前宣布已经开始发运其下一代LatticeECP4™FPGA系列的密度最大的器件至部分客户。新的LatticeECP4 FPGA系列提供了多种200K LUT以下的低成本,低功耗的中档器件,具有高性能的创新,如低成本封装的6G SERDES,功能强大的DSP块和内置的基于硬IP的通信模块。LatticeECP4-190是这个系列中最高密度的器件,拥有183K  LUT,480个双数据速率DSP乘法器(18×18),5.8 Mbits存储器和12个6 Gbps SERDES通道,使得它非常适合各种成本和功耗敏感的无线、有线、视频和计算应用。莱迪思已发布了三个倒装芯片封装的LatticeECP4-1
[嵌入式]
LTC2207在ARM与FPGA控制下的采集应用
引言 数据采集技术是一种流行且实用的电子技术。它广泛应用于信号检测、信号处理、仪器仪表等领域。近年来,随着数字化技术的不断发展,数据采集技术也呈现出速度更高、通道更多、数据量更大的发展趋势。 本设计中数据采集系统的核心器件是凌力尔特公司的A/D转换芯片LTC2207。本文研究了在ARM核S3C2440芯片和FPGA的控制下对直流数据和正弦信号的采集应用,并进行了相关的仿真验证。 1 LTC2207芯片介绍 1.1 LTC2207的功能特性 LTC2207是16位A/D转换器,它的采样速率为105Msps。LTC2207是针对输入频率为700 MHz的高频、宽动态范围信号进行数字化处理而设计的。它可以利用PGA前端(输入范
[单片机]
LTC2207在ARM与<font color='red'>FPGA</font>控制下的采集应用
Achronix FPGA增加基于Linux的RISC-V软处理器的支持,以实现可扩展数据处理
Achronix FPGA增加对Bluespec提供的基于Linux的RISC-V软处理器的支持,以实现可扩展数据处理 Bluespec支持加速器功能的RISC-V处理器将Achronix的FPGA转化为可编程SoC 加利福尼亚州和马萨诸塞州,2024年4月—— 高性能FPGA芯片和嵌入式FPGA(eFPGA)硅知识产权(IP)领域的领先企业Achronix半导体公司,以及RISC-V工具和IP领域的行业领导者Bluespec有限公司,日前联合宣布推出一系列支持Linux的RISC-V软处理器,这些处理器都可用于Achronix FPGA产品Speedster®7t系列中 。这是业界首创,Bluespec的RISC-V处理器现
[嵌入式]
Achronix <font color='red'>FPGA</font>增加基于Linux的RISC-V软处理器的支持,以实现可扩展数据处理
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved