简述嵌入式逻辑分析仪在FPGA测试中的应用
逻辑分析仪是利用时钟从测试设备上采集和显示数字信号的仪器,最主要作用在于时序判定。由于逻辑分析仪不像示波器那样有许多电压等级,通常只显示两个电压(逻辑1和0),因此设定了参考电压后,逻辑分析仪将被测信号通过比较器进行判定,高于参考电压者为High,低于参考电压者为Low,在High与Low之间形成数字波形。逻辑分析仪与示波器相同,是通过采集指定的信号,并通过图形化的方式展示给开发人员,开发人员根据这些图形化信号按照协议分析出是否出错。尽管图形化的显示已经给开发人员带来不少的方便,但是人工将一串串信号分析出来不仅麻烦而且极易出错。在这个科技高速发展的社会,一切都在追求高效率。自动化、智能化已经成为协议分析的发展方向。在这个思想的指引下各种测试仪器的协议分析功能出现并发展起来。目前大多数开发人员通过逻辑分析仪等测试工具的协议分析功能可以很轻松的发现错误、调试硬件、加快开发进度,为高速度、高质量完成工程提供保障。逻辑分析仪的工作过程就是数据采集、存储、触发、显示的过程,由于它采用数字存储技术,可将数据采集工作和显示工作分开进行,也可同时进行,必要时,对存储的数据可以反复进行显示,以利于对问题的分析和研究。
ELA的工作原理及特点
一个嵌入式系统装置一般都由嵌入式计算机系统和执行装置组成,嵌入式计算机系统是整个嵌入式系统的核心,由硬件层、中间层、系统软件层和应用软件层组成。执行装置也称为被控对象,它可以接受嵌入式计算机系统发出的控制命令,执行所规定的操作或任务。执行装置可以很简单,如手机上的一个微小型的电机,当手机处于震动接收状态时打开;也可以很复杂,如SONY智能机器狗,上面集成了多个微小型控制电机和多种传感器,从而可以执行各种复杂的动作和感受各种状态信息。嵌入式逻辑分析仪的组成框图如图1所示,主要分为硬件部分和软件部分。硬件部分由待测设计(DUT)、嵌入到FPGA中的ELA IP核、RAM存储单元以及JTAG接口组成;软件部分由用户设计软件和集成在其中的ELA在线调试软件组成。ELA的工作原理为:设置ELA在线调试软件中需要监测的信号、触发逻辑、采样深度和时钟信号等各项参数;把设置好的ELA文件与用户设计编译综合后一起下载到FPGA中;运行ELA,如果满足触发条件,ELA就在时钟的上升沿对被测信号采样,并储存在RAM存储单元中。
图1嵌入式逻辑分析仪的组成框图
嵌入式逻辑分析仪能够方便地对设计进行在线调试,及时发现系统内部所存在的问题,无须对设计文件进行任何修改就可以得到内部节点或者I/O引脚的状态。例如,SignalTap II支持多达1024个通道,采样深度高达128Kb,时钟支持超过200MHz,每个分析仪均有10级触发输入/输出,从而增加了采样的精度。
ELA在FPGA测试中的应用
嵌入式逻辑分析仪在FPGA的测试中应用极为广泛,能够对系统实时监测。设计中所使用的FPGA芯片为Altera公司Cyclone系列中的EP1C12Q240C8,它支持SignalTap II,有12 060个逻辑单元,存储位的大小为239 616,能够较好的支持各种复杂的设计。
ELA的应用设计流程如下。
1 Stp文件的创建
在交通灯控制器的设计完成并编译综合后,即可创建一个SignalTap II文件(stp文件)。通常有两种方式来建立stp文件,一是直接建立stp文件,并利用SignalTap II Editor配置逻辑分析仪的各项参数;二是利用MegaWizard Plug-in Manager生成和配置stp文件。如图2所示。
图2 Stp文件的载入
2 ELA的设置
将stp文件加入到设计中后,就可以对其进行设置,流程如下。
①添加被测信号。通过Node Finder中的SignalTap II Filter查找设计中所有预综合和布局布线后的信号,选择需要观察的信号,在本设计中,可以全部选定。
②设置采样时钟。在设置采样时钟时,可以使用其中任何一个信号作为采样时钟,但不能用布局布线后的信号,为获得更准确的采样数据,采样时钟应选择全局时钟。
③确定采样深度。SignalTap II的采样深度最大可达128Kb.在选择采样深度时,必须考虑到FPGA的内存大小,此处选择1Kb的采样深度。
④设置缓冲获得模式。通过设置缓冲获得模式,用户可以指定在SignalTap II触发前和触发后所捕获的数据量,缓冲获得模式主要有环形模式和分段缓冲模式。在此选择环形模式的预触发位置。
⑤设置触发条件。SignalTap II支持基本触发和高级触发的功能。在基本触发中,它支持10级触发级数,对于每一级触发,可以根据设计的需要设置不同的触发电平。
本设计对SignalTap II的设置如图3所示,其中采样深度为1Kb,缓冲获得模式选择环形模式的预触发位置,触发条件为基本触发;此外,采样时钟选择为全局时钟。这些设置能够准确地对本设计进行在线调试,有效地监测内部信号。
图3 SignalTap II设置窗口
- 在采用FPGA设计DSP系统中仿真的重要性 (06-21)
- 基于 DSP Builder的FIR滤波器的设计与实现(06-21)
- 基于FPGA的快速并行FFT及其在空间太阳望远镜图像锁定系统中的应用(06-21)
- 3DES算法的FPGA高速实现(06-21)
- 用FPGA实现FFT算法(06-21)
- FPGA的DSP性能揭秘(06-16)