当前位置:首页 > 嵌入式 > 嵌入式硬件

  逻辑分析仪自1973年问世以来,在短短几十年的时间内得到了迅速的发展。传统逻辑分析仪利用芯片的引脚对信号采样,并送到显示部分对系统进行分析。

  但对于无引脚的封装类型,传统逻辑分析仪很难有效的监测系统内部信号。而在FPGA测试中,嵌入式逻辑分析仪(ELA)的出现解决了内部信号的在线调试问题。ELA综合了嵌入式技术和逻辑分析仪技术,将逻辑分析IP核嵌入到FPGA中,在不引出内部信号的情况下即可方便的对系统进行调试。常用的嵌入式逻辑分析仪有Altera公司的SignalTap II、Xilinx公司的ChipScope Pro以及Lattice公司的ispTRACY等。本文以Altera公司的SignalTap II为例,对嵌入式逻辑分析仪的工作原理及在线调试进行探讨。

  ELA的工作原理及特点

  嵌入式逻辑分析仪的组成框图如图1所示,主要分为硬件部分和软件部分。硬件部分由待测设计(DUT)、嵌入到FPGA中的ELA IP核、RAM存储单元以及JTAG接口组成;软件部分由用户设计软件和集成在其中的ELA在线调试软件组成。ELA的工作原理为:设置ELA在线调试软件中需要监测的信号、触发逻辑、采样深度和时钟信号等各项参数;把设置好的ELA文件与用户设计编译综合后一起下载到FPGA中;运行ELA,如果满足触发条件,ELA就在时钟的上升沿对被测信号采样,并储存在RAM存储单元中;当采样完数据,即可通过JTAG接口将数据上传到SignalTap II中进行在线调试。

图1 嵌入式逻辑分析仪的组成框图

  嵌入式逻辑分析仪能够方便地对设计进行在线调试,及时发现系统内部所存在的问题,无须对设计文件进行任何修改就可以得到内部节点或者I/O引脚的状态。例如,SignalTap II 支持多达1024个通道,采样深度高达128Kb,时钟支持超过200MHz,每个分析仪均有10级触发输入/输出,从而增加了采样的精度。

  ELA在FPGA测试中的应用

  嵌入式逻辑分析仪在FPGA的测试中应用极为广泛,能够对系统实时监测。本文以交通灯控制器的设计为例,对SignalTap II应用于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文件。相比于第二种方式,第一种更为简单,只需在File中选择New,单击Other Files,选择SignalTap II File即可,如图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设置窗口

  3 设计下载

  当设置完stp文件并编译综合后,软件将ELA IP嵌入设计里面,同设计一起下载到FPGA中。在器件列表中,逻辑分析仪会自动探测编程硬件,如果在保存设计前已经选好了FPGA中所使用的芯片,就会自动给出已经选好的器件,若没有选择,则需要在器件列表中选择。当器件连接成功,在SOF(SRAM Object File)管理器中选择需要下载的SOF文件,单击下载按钮即可将设计下载到FPGA中,如图4所示。

图4 设计下载窗口

  4 在线调试

  在线调试即利用JTAG接口将数据上传到调试软件中,根据实时运行的结果来对设计进行调试。本设计所实现的功能是在时钟信号的控制下,根据当前的状态决定下一个时钟周期的输出,即红灯、绿灯和黄灯的开启。在绿灯开启时,红灯和黄灯关闭,而在红灯开启时,绿灯及黄灯关闭。两组红、绿、黄灯为输出信号,8个状态为内部信号。

图5 SignalTap II数据窗的实时监测信号

  设计中所得到的波形如图5所示,从图5中可以看出,对于第一组灯,在state.st3时,黄灯开启,绿灯及红灯都关闭,一个时钟周期后,跳转到state.st4,黄灯关闭,同时红灯开启;四个时钟周期后,跳转到state.st0,红灯关闭,同时绿灯开启,黄灯继续关闭;三个时钟周期后,再次跳转到state.st3,黄灯开启,绿灯关闭;一个时钟周期后,跳转到state.st4,黄灯关闭,红灯开启。对于第二组,其红绿灯的转换也是一样的不断循环,这样就实现了红绿黄灯的交替变化。

  在线调试得到的波形与交通灯控制器设计中所要求的功能完全吻合,在上述调试过程中,嵌入式逻辑分析仪对内部的8个状态能够很好的监测,保证了设计的正确。

  在调试过程中,用户可以很方便的开始或暂停ELA,对内部信号进行分析。如果需要修改设置,如采样深度或触发条件,只需停止运行ELA,完成修改后重新编译综合即可,缩短了调试时间。

 


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭