当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]逻辑分析仪SignalTaPⅡ在系统级调试中的应用

摘要:嵌入式逻辑分析仪SignalTap II是Quartus II软件中第二代系统级调试工具,它可以用来捕捉目标芯片内部信号节点处的信息,而又不影响原硬件系统的正常工作。通过一个多波形信号发生器的设计实例,详细阐述SignalTap II的工作流程和参数设置方法。实验结果表明,该测试方法操作方便,实时性较高,能够加快系统的开发流程。
关键词:SignalTap II;测试;信号发生器

引言
    随着微电子技术、微封装技术和印制板制造技术的不断发展,印制电路板面积越来越小,密度越来越大,复杂度越来越高,层数越来越多。故采用传统的硬件测试方法(如外探针测试法)来测试焊接上的器件,难度增大。而嵌入式逻辑分析仪的使用可以将高效的硬件测试手段和传统的系统测试方法相结合,从而解决这些问题。嵌入式逻辑分析仪实现了硬件测试的软件化,但它和验证逻辑正确性的软件仿真又有所不同。它可以用来捕捉目标芯片内部信号节点处的信息,而又不影响原硬件系统的正常工作,具有无干扰、便于升级、使用简单、价格低等特点。

1 SignalTap II原理及工作流程
    SignalTap II逻辑分析仪是Quartus II软件中第二代系统级调试工具。它是一种基于逻辑分析核的嵌入式逻辑分析仪,不仅具备普通逻辑分析仪的触发、数据采集和存储功能,还可访问FPGA器件内部的所有信号和节点,在系统设计中观察硬件和软件的交互作用。SignalTap II专用于Quartus II软件,与其他嵌入式逻辑分析仪相比,它支持的通道数最多,抽样深度最大,时钟速率最高。目前SignalTap II逻辑分析仪支持的器件系列包括:Cyclone、Cyclone II、Cyclone III、APEXT II、APEX 20KE、APEX20KC、APEX20K、Excalibur、Mercury、Stratix GX、Stratix、Stratix II、Stratix III等。
    SignalTap II的工作流程如图1所示。在FPGA运行过程中,当满足触发条件时SignalTap II将启动采样过程并将数据暂存于目标器件中的嵌入式RAM(如ESB、M4K)中,采样数据不断刷新片内存储器内容,然后通过器件的JTAG端口将捕获到的信号数据传出,送入计算机Quartus II开发环境中进行显示和分析。这样开发者可以在整个设计过程中以系统级的速度来观察硬件和软件的交互作用。此外,SignalTap II允许对设计中的所有层次的模块的信号节点进行测试,可以使用多时钟驱动,而且还能通过设置以确定前后触发捕捉信号信息的比例。



2 STP文件的参数设置
    在图1所示的SignalTap II工作流程中,STP文件的参数设置是否恰当将直接影响采样与分析结果的好坏,故它在整个流程中是极其重要的。STP文件的参数设置主要包括以下几个方面:
    ①设置采样时钟。采样时钟决定了显示信号波形的分辨率,它的频率要大于被测信号的最高频率,否则无法正确反映被测信号波形的变化。SignalTap II在时钟的上升沿采样,可以使用设计系统中的任何信号作为采样时钟,根据Altera公司的建议最好使用同步系统全局时钟
作为采样时钟。但是在实际应用中,多数使用独立的采样时钟,这样能采样到被测系统中的慢速信号,故需将系统时钟进行分频。
    ②设置被测信号。可以在Node Finder窗口进行选择,添加要观察的信号。
    ③配置采样深度,确定RAM的大小。采样深度决定了待测信号采样存储的大小,它是根据设计中剩余的RAM块容量和待测信号的个数决定的。待测信号个数的增减和采样深度的深浅会直接改变RAM块的占用情况,采样深度的范围为0~128 KB。SignalTap II所能显示的被测信号波形的时间长度为Tx=N×Ts,其中N为缓存中存储的采样点数,Ts为采样时钟的周期。
    ④设置buffer acquisition mode。buffer acquisitionmode包括循环采样存储、连续存储两种模式。循环采样存储也就是分段存储,将整个缓存分成多个片段(segment),每当触发条件满足时就捕获一段数据。该功能可以去掉无关的数据,使采样缓存的使用更加灵活。通常选择循环采样存储,需要设置触发位置。触发位置允许指定在选定实例中在触发器之前和触发器之后应采集的数据量。Pre trigger position表示采样到的数据12%为触发前,88%为触发后;Center trigger position表示采样的数据处于触发前后各一半;Post trigger position表示采样到的数据88%为触发前,12%为触发后;Continuous triggerposilion表示以环形缓冲的方式进行连续采样保存,直到用户中断为止。
    ⑤触发级别。SignalTap II支持多触发级的触发方式,最多可支持10级触发,为设置复杂的触发条件提供了足够的灵活性,帮助验证检错。如果设置了多触发级别,直到所有的触发条件顺序满足后,才开始采集数据。
    ⑥触发条件。设定约束性的触发条件。可以设定单个信号的独立触发条件,直接采用单个外部或设计模块内部的信号;也可以允许多个节点信号的组合复杂触发条件构成触发函数的触发条件方程,以协助调试工作。当触发条件满足时,在SignalTap II时钟的上升沿采样被测信号。例如,使能信号EN与RST相与后触发,触发条件=ENA&RST。
    当完成以上设置后,重新编译工程并将该设计下载到FPGA中,在Quartus II中SignalTap II窗口下查看逻辑分析仪捕获结果,并进行相关分析,完成系统测试。

[!--empirenews.page--]

3 实例分析
    本文以一个多波形信号发生器为例,具体说明使用SignalTap II进行实时测试的具体过程。该设计基于Altera公司Cyclone II系列的EP2C8Q208C8。在Quartus II中完成的设计如图2所示。


    设计的多波形信号发生器可以产生正弦波、三角波和方波,可以通过开关选择输出的波形。系统采用自顶向下的设计思想,底层采用VHDL语言编程和LPM_ROM模块实现,顶层采用原理图设计。图2中,rst为复位信号,sel[1..0]为波形选择信号,clk为主时钟,q[7..0]为输出信号。当sel=“00”时,输出正弦波;当sel=“01”时,输出三角波;当sel=“10”时,输出方波。系统由分频模块、正弦波模块(地址发生器模块和LPM_ROM模块)、三角波模块、方波模块和波形选择模块组成。
    系统的RTL电路图如图3所示,双击图形中有关模块,或选择左侧各项,可逐层了解各层次的电路结构。


    根据上述SignalTap II的工作流程,首先建立一个stp文件(stpl.stp),接着进行参数设置,如图4所示。调入待测信号q[7..0];采样时钟选为主频时钟信号CLK(50MHz)经过分频后的信号CLK1(100 kHz);在Buffer acquisition mode框中的Circulate栏设定采样深度中起始触发的位置,选择前点触发(Pre trigger position);采样深度设为1KB;触发级别选择1;触发信号选择rst,在Pattern栏选择上升沿触发方式。然后连接实验开板,进行编译下载。最后单击SignalTap II面板上的Autorun Analysis按钮,启动SignalTap II进行采样和分析。

[!--empirenews.page--]


    在SignalTap II的采样之前,要进行相关设置,比如要观察产生的正弦波,先将拨码开关12(sel[1..O])设置为“00”(三角波时设置为“01”,方波是设置为“10”),再将拨码开关3(rst)由0变为1,产生一个上升沿,作为SignalTap II的采样触发信号。这时执行Autorun
Analysis,就能在SignalTapII数据窗观察到来自实验板上FPGA内部的实时信号,如图5所示。图中依次为正弦波、三角波和方波数据。数据窗的上沿坐标是采样深度的二进制位数,全程是1024位。
    为了更直观地看到波形图,不需要进行数/模转换,直接右键单击所要观察的总线信号名,在弹出的下拉菜单中选择总线显示模式“Bus Display Format”为“Line Chart”,即可获得如图6所示的模拟信号波形。
    从图5、图6可以看出输出结果和设计需求是一致的,验证了设计的正确性。如果采用传统的硬件测试方法,在本系统中还需要加入D/A转换模块,利用示波器观察波形。故利用SignalTap II进行系统的硬件测试是非常方便的,可以加快系统的开发流程。而在整个工作流程中,STP文件的参数设置是至关重要的,它直接影响测试结果。例如在本系统中,采样时钟采用分频后的信号,而不是采用主时钟,因为主时钟频率太高,不便于观察输出信号。另外还有触发信号的选择,启动采样前开关的设置,都会直接影响输出信号。



4 结论
    嵌入式逻辑分析器SignalTap II克服了传统硬件测试的缺点,为系统测试提供了一个很好的途径。它具有实时性和可视性,减少了调试验证的时间,加快了设计周期。通过对Cyclone II系列EP2C8Q208C8器件的实验,证实该测试手段提高了系统的调试能力,具有很好的效果。在调试FPGA的时候,可以设置多个嵌入式测量模块等其他功能,这样可以加快系统的开发,为社会带来更大的经济效益。但是它需要占据FPGA资源(如RAM、LE等),且资源消耗量与需采集的数据量成正比,因此采集信号的深度不能过大。此外,当利用SignalT印II将芯片中的信号全部测试结束后,需将SignalTap II从设计中移除,以免浪费资源。

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

逻辑分析仪和示波器是两种常用的电子测试设备,它们在测试和调试电路时都有各自独特的应用。下面将详细比较它们的不同之处,并解释各自的用途。

关键字: 逻辑分析仪 示波器

逻辑分析仪是电子电路设计和测试中常用的工具之一,它可以用来同时观察多个信号的实时变化,以便进行功能测试和故障排除。在本文中,我们将介绍如何使用逻辑分析仪进行功能测试,包括使用步骤、方法和一个实际案例。

关键字: 逻辑分析仪 电路设计

逻辑分析仪是电子设备测试和调试的重要工具,用于对数字系统进行实时故障诊断和调试。在选择逻辑分析仪时,需要考虑以下参数和事项。

关键字: 逻辑分析仪 电子设备

昆山2023年9月15日 /美通社/ -- 万豪旅享家旗下31个非凡品牌之一的万枫酒店今日宣布,昆山万枫酒店盛大开业。昆山市是首批"国家生态园林城市",旅游资源丰富,素有"百戏之祖,昆曲之乡...

关键字: 液晶电视 灯光 调试 高铁

逻辑分析仪是一种广泛应用于电路信号测试的仪器,它为电路信号测试提供了许多有效的解决方法。以下是逻辑分析仪为电路信号测试提供的几个主要解决方法:

关键字: 逻辑分析仪 电路信号

逻辑分析仪是一种广泛应用于数字系统调试和故障诊断的仪器。它是通过实时捕获和显示数字系统的逻辑电平状态,帮助工程师理解系统中各个信号的逻辑关系和时序关系,进而进行故障排除和系统设计验证。本文将探讨逻辑分析仪的应用原理、特点...

关键字: 逻辑分析仪 数字系统

逻辑分析仪是电子工程师用于分析和检测数字系统中的逻辑故障的重要工具。这种设备能够记录、分析并解码数字信号,帮助工程师理解系统中各个组件的交互情况。在设计和调试复杂数字系统,如计算机、微处理器、微控制器或其他嵌入式系统时,...

关键字: 逻辑分析仪 数字系统

覆盖华东、华北和西部的三大客户创新与应用中心在两年内相继开业 以客户为中心的本地化战略迎来重要里程碑 成都2023年9月7日 /美通社/ -- 生命科学集团赛多利斯持续扩张在华足迹,并于今日正式启用西部区...

关键字: 质量检测 仪器 生物技术 调试

大连2023年8月24日 /美通社/ -- 2023年8月23日,由中国家用电器协会指导,中国家电主办的"风华二十载 再谱新篇章 2023-2024中国空调行业高峰...

关键字: 空调 热泵 系统级 空调压缩机

妇科大咖云集 共话日间诊疗新模式 北京2023年3月7日 /美通社/ -- 为进一步推广由郎景和院士牵头,朱兰教授等我国多位著名妇科医学专家共同编著《日间宫腔镜手术中心设置及管理流程中国专家共识》,普及日间宫腔镜诊疗理...

关键字: 东风 内窥镜 编写 调试
关闭
关闭