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

  逻辑分析仪自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,完成修改后重新编译综合即可,缩短了调试时间。

 


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

这款全新的中端MCU系列为设计人员提供了更高水平的安全性和灵活性

关键字: 嵌入式 单片机

2024年4月11日,中国——意法半导体的ST25R100近距离通信(NFC)读取器芯片独步业界,集先进的技术功能、稳定可靠的通信连接和低廉的成本价格于一身,在大规模制造的消费电子和工控设备内,可以提高非接触式互动功能的...

关键字: 嵌入式 数据读取器 芯片

单片机是一种嵌入式系统,它是一块集成电路芯片,内部包含了处理器、存储器和输入输出接口等功能。

关键字: 单片机 编写程序 嵌入式

深圳2024年4月23日 /美通社/ -- 全球AI解决方案与工业级存储领导品牌宜鼎国际 (Innodisk)持续深化边缘AI布局,今(23)日发表全球首创"MIPI over Type-C"独家技术,让旗下嵌入式相机模...

关键字: AI 嵌入式 相机

为增进大家对嵌入式主板的认识,本文将对嵌入式主板以及嵌入式主板常见问题及其解决方法予以介绍。

关键字: 嵌入式 指数 主板

为增进大家对嵌入式系统的认识,本文将对嵌入式系统、嵌入式系统的特点予以介绍。

关键字: 嵌入式 指数 嵌入式系统

为增进大家对嵌入式的认识,本文将对嵌入式、嵌入式工作相关的内容予以介绍。

关键字: 嵌入式 指数 嵌入式技术

机器人操作系统(ROS)驱动程序基于ADI产品而开发,因此可直接在ROS生态系统中使用这些产品。本文将概述如何在应用、产品和系统(例如,自主导航、安全气泡地图和数据收集机器人)中使用和集成这些驱动程序;以及这样将如何有助...

关键字: 电机控制器 机器人 嵌入式

在嵌入式系统开发、调试和测试过程中,J-Link作为一种高效的调试工具,为开发者提供了极大的便利。然而,要想充分发挥J-Link的功能,首先需要正确安装其驱动程序。本文将详细介绍J-Link驱动的安装过程,并深入解析其中...

关键字: jlink 嵌入式系统 嵌入式开发

与谷歌的合作使 Nordic 能够在 nRF Connect SDK 中嵌入开发人员软件,以构建与安卓移动设备兼容的谷歌Find My Device和未知跟踪器警报服务

关键字: 谷歌 SoC 嵌入式开发
关闭
关闭