第五章 在线逻辑分析仪-SIGNALTAP

这篇具有很好参考价值的文章主要介绍了第五章 在线逻辑分析仪-SIGNALTAP。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第五章 在线逻辑分析仪-SIGNALTAP

ps:仿真实在pc端进行仿真,和fpga一点关系也没有,而signaltap是直接反馈芯片的信号。

进行 FPGA 开发的过程中,在逻辑代码上板运行前都会进行仿真验证,而 EDA 仿真工具(如 Modelsim 等)的使用更是可以可以让工程师提早发现工程中出现的一些错误。但这并不代表经过仿真工具验证后的设计就能够达到预期。事实上,在上板运行时仍有可能遇到各种各样的问题。使用仿真工具进行验证的时候所设计 Testbench 的激励输入有时不能囊括一切可能发生的情况,并且由于软件仿真与实际硬件之间总是存在着细微的差别,诸如此类的原因导致工程师在上板运行时仍会发现各种设计问题。而很多情况下,在 FPGA 实时运行中需要查看某些信号,因此需要一个实时的信号分析工具获取 FPGA 内部的实时信号从而进行调试分析——SignalTap II 应运而生。

SignalTap 是由 Altera 公司开发的一个在线、片内信号分析的工具,为设计开发者验证所用。其作用类似于一个数字逻辑分析仪,利用 signaltap 工具基本上可以代替数字逻辑分析仪。Signaltap 是Quartus 里最常用的工具,希望同学们可以熟练使用。

第1节 软件原理

在使用 SignalTap 前先来理解一下 SignalTap 的原理,从而有助于理解各个参数。
第五章 在线逻辑分析仪-SIGNALTAP
如图 1.5- 1 为 SignalTap II 的基本工作原理,通过此图可以直观的理解触发条件、采样时钟、采样深度等的概念(概念及相关设置见第三节)及其之间的关系。
在调试过程中,某些需要观察分析的信号被称为“被测信号”,可以存在多个被测信号。
SignalTap II 的基本工作过程如下:以被测信号为对象,根据需要设置合理的触发条件,在触发条件(如图中的被测信号下降沿)满足时的前后一段时间,每个采样时钟的上升沿会对被测信号进行一次采集,并将采集的信号值存储在内部的 RAM 中。工程师可以指定触发条件前后采多少个样点,如果 RAM 比较大,则可以保存比较多的数据。反之,如果 RAM 比较小,那么保存的数据自然比较少,RAM 大小决定了观察数据的多少。最后 SignalTap 将读出RAM 中的数据并逐个在显示器中显示出来,因此 SignalTap 观测到的都是理想的(这说明再出现一些特殊信号时候,你是检测不出来的),没有毛刺的信号,工程师可以在显示器中观测信号,从而达到对信号进行在线调试分析的目的。

第2节 软件界面

打开 Quartus 软件,在菜单栏中,选择 Tools>SignalTal II Logic Analyzer 后可以打开 SignalTap 工具。如下图 1.5:
第五章 在线逻辑分析仪-SIGNALTAP
第五章 在线逻辑分析仪-SIGNALTAP
图 1.5- 3 中将需要注明的地方进行了标记,接下来将对各处功能进行详细介绍:

图 1.5- 3 中所标识的 1—4 为基本的软硬件配置:
1 为下载线选择;
2 为硬件检测(识别相关的 FPGA 设备);
3 为工程配置文件选择(sof 文件);
4 为加载 sof 文件(1-3 均完成后即可加载文件)。

图示 5—7 为采样设置:
5 为选择采样时钟,采样时钟要根据具体需要进行设置, 可以为模块的工作时钟,也可以为内部信号;
6 为采样深度设置,采样深度并非越大越好,要根据分析需求进行合理设置;
7 为触发位置选择,包括前段触发、中间触发、后端触发三种方式,以触发点为参考,根据触发位置的不同能得到不同时间段的信号值。

图示左边区域 8—9 为信号设置,包括添加信号,设置信号触发条件等。在 8 中空白处双击即可添加信号界面,根据需要添加工程中的相应信号,添加信号后即可设置其触发条件。

图中标识的 10 为资源使用情况指示,如果资源多于 FPGA 本身的资源,综合时会出现报错从而无法进行分析。

最上面的 11 为运行操作按钮,开始运行后,待触发条件满足后会显示波形。

第3节 使用流程

首先需要选择下载线方式、FPGA 芯片型号、工程配置文件,如下图 1.5- 4 所示:
第五章 在线逻辑分析仪-SIGNALTAP
随后设置采样时钟、采样深度以及采样信号。
第五章 在线逻辑分析仪-SIGNALTAP
图 1.5- 5 为采样时钟及采样深度的设置。此处选择 FPGA 内部 pll 锁相环输出的信号 c1 作为采样时钟。这里需要注意的是,采样时钟不一定是工程里的时钟,内部任何信号都是可以作为采样时钟的。这里将采样深度设置为 128,即共计可以观察到到 128 个采样点的数据。在 setup 窗口中双击空白地方,弹出如下图 1.5- 6所示界面。

第五章 在线逻辑分析仪-SIGNALTAP
图 1.5- 6 中红色框表示的是选择哪一阶段的信号,例如选取的是综合前或是综合后的信号等。因为综合时软件会自动进行优化,有些信号可能会找不到。一般会选择 pre-synthesis 或 Design Entry(all name)模式,在 Nodes Found 选择要观察的信号,将其添加到右边框中即可。

本例中选择 key_col 和 rst_n 信号来进行观察,如图 1.5-7所示:
第五章 在线逻辑分析仪-SIGNALTAP
采样信号选择好后即可进行触发条件的设置。观察 trigger Conditions 一列,key_col 的默认值为 xh(总线型信号的 don’t care),rst_n 的默认值为 don’t care。在 trigger Conditions 一列中右击 rst_n 所在的行,将会出现 6 种触发条件供工程师选择。

第五章 在线逻辑分析仪-SIGNALTAP
图 1.5- 8 中 6 种触发条件的含义如下:
Don’t Care:表示不关心,也即任意,此信号的值不影响触发条件;
Low :低电平触发;
Falling Edge:下降沿触发;
Rising Edge:上升沿触发;
High:高电平触发;
Either Edge:双沿触发,即有变化时触发。
此处可以假定为上升沿触发,对 key_col 也进行触发条件的设置,具体设置如下所示。
第五章 在线逻辑分析仪-SIGNALTAP图 1.5- 9 中设置的触发条件含义为:当 rst_n 为上升沿并且 key_col 全为高(Fh)时触发。注意,这里多触发条件之间默认为“与”的关系,可能会被误认为是“或”的关系。最后进行综合并下载,点击“Run Analysis”按钮后查看结果。

如果触发条件成立,则可在 Data 窗口观察到采样波形,图 1.5- 10 是某一工程的采样结果,可以看到其采样波形与 modelsim 波形相似。点击波形后可以放大波形进行观看,右击波形则为缩小波形。
第五章 在线逻辑分析仪-SIGNALTAP

第4节 案例说明

本节中将采用几个案例来对 SignalTap 的使用步骤进行详细的说明。

案例 1:SignalTap 的采样时钟不一定是时钟信号,也可以是其他任意的信号。SignalTap 会在采样时钟的上升沿对信号值进行捕捉,如果没有时钟上升沿则 SignalTap 一直处于等待状态。

案例 2:观测时可以改变采样的深度以便观察到信号更长时刻的值。图 1.5- 11 中设置的深度为128,这意味着一共可以观察到 128 个点的值。如果这一观察量不够则可以将其设置成更大的数值。

但需要注意的是,SignalTap 需要使用到 FPGA 内部的 RAM 资源来保存采样的数据,所以采样深度越大,需要使用的的 RAM 就越大,与此同时占用的 FPGA 资源也就更多。然而 FPGA 的资源是有限的,当 FPGA 的内部资源不支持设置采样点数所占用的 RAM 资源数时,在编译时会出现报错提示。

第五章 在线逻辑分析仪-SIGNALTAP
案例 3:通过设置 segmented 参数可以检查满足触发条件的次数。例如,发现按键存在失灵情况时,为了定位此问题需要检查按键按下的次数,判断其是否与捕捉到信号次数一致。

该操作的主要设置如下:

  1. 将 segmented 设置为 32;
  2. 将捕捉到信号 key_vld 拉到显示窗口,该信号为 1 表示捕捉到一个按键。
  3. 设置触发条件为:key_vld 的上升沿;
  4. 按下 run 键,等待触发条件满足;
  5. 按下按键 4 次。
  6. 按停止捕捉键。

如果此时 SignalTap 波形界面出现 5 个窗口,其中前 4 个表示条件满足捕捉到 key_vld 的上升沿触发条件的窗口,则表示按下按键的次数与捕捉到的次数一致。否则代表发生错误,按键存在问题。

案例 4:添加信号后,如界面中该信号显示为红色,如图 1.5- 12 所示,则表示该信号的捕捉存在问题。
第五章 在线逻辑分析仪-SIGNALTAP
采样信号为红色出现该问题的可能性原因有:

  1. 该信号在电路综合时被优化。
    a) 虽然该信号已经产生,但其没有被视为条件进行调用,或者不是输出信号。此时系统认为信号是多余的,因此在综合时会将该信号优化掉。
    b) 如果该信号是有用信号,不应该被优化掉。则说明电路有 BUG,需要工程师去定位错误。

  2. 组合逻辑信号一般是捕捉不到的。其解决方法为忽略该信号,可以将产生该信号的所有条件都调用出来,从而推敲结果是否正确。

案例 5:图 1.5- 13 中包含的一个案例触发条件是:当 en 为下降沿且 en_tmp 发生变化。注意,只有在采样时钟上升沿时捕捉到两个条件同时满足时才会进行触发。
第五章 在线逻辑分析仪-SIGNALTAP
图 1.5- 14 所示波形中,在第 5 时钟上升沿时观察到 en 等于 1,en_tmp 等于 1,其不满足条件。而在第 6 时钟时捕获到 en 的下降沿(之前为 1,现在为 0)与 en_tmp 的下降沿(之前为 1,现在为0),可以看出第 6 个时钟满足触发条件。

在线逻辑分析仪是每个 FPGA 学习开发者必须熟练掌握的基本工具,是使用 FPGA 的必备能力之一。针对 SignalTap 的使用方法,下面链接中提供了 6 个训练工程以方便练习掌握这一工具。
工程训练网址:请点击文章来源地址https://www.toymoban.com/news/detail-437716.html

第5节 6个工程案例

5.1 案例1

5.2 案例2

5.3 案例3

5.4 案例4

5.5 案例5

5.6 案例6

到了这里,关于第五章 在线逻辑分析仪-SIGNALTAP的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 一个 24 通道 100Msps 逻辑分析仪

    这是一个创建非常便宜的逻辑分析仪的项目,但其功能可与昂贵的商业分析仪相媲美。该分析仪可以以每秒 1 亿个样本的最高速度对多达 24 个通道进行采样,并且可以通过单个通道中的极性变化或多达 16 个通道形成的模式来触发。 该项目不仅包含硬件,还包含软件,它有一

    2024年02月01日
    浏览(48)
  • 用逻辑分析仪观察串口Uart数据波形

    只讨论嵌入式编程中较为常用的异步串行接口(Universal Asynchronous Receiver/Transmitter, UART),TTL电平。 串口的参数一般有: 1. 波特率 ,数据传输速率,单位bps(bits per second),即每秒传输的位数,常见的波特率有9600bps、19200bps、115200bps等;如果波特率为115200bps,则传输一个

    2024年02月06日
    浏览(47)
  • Vivado中ILA(集成逻辑分析仪)的使用

      在FPGA设计上板过程中,如果出现问题难以定位具体问题的位置和原因,要观察一些信号的波形,可以使用ILA来捕获关键信号,以便分析问题并快速定位其原因。ILA(Integrated Logic Analyzer),集成逻辑分析仪,与Quqartus 中的 SignalTap II 作用类似。   在IP Catalog中搜索 ILA ,

    2024年02月07日
    浏览(49)
  • 第十三章 Kingst VIS逻辑分析仪的使用

    目录 13.1 产品简介 13.1.1 基础知识 13.1.2 产品型号及规格 13.1.3 支持的协议类型 13.2 Kingst VIS 软件简介 13.2.1 软件安装指南 13.2.2 软件界面简介 13.2.3 多语言切换  13.2.4 模拟演示功能 13.3 设备连接 13.3.1 连接设备与电脑  13.3.2 连接设备与被测系统 13.3.3 多点接地提高测量准确度

    2024年02月15日
    浏览(44)
  • [VIVADO] 集成逻辑分析仪(ILA)的4种使用方法

    目录 01 HDL代码实例化ILA IP核 02 Block Design添加ILA IP核 03 综合后添加Mark Debug 04 HDL中使用MARK_DEBUG 05 文章总结 大家好,这里是程序员 杰克 。一名平平无奇的嵌入式软件工程师。 在日常FPGA开发过程中,逻辑代码设计完成后,为了验证代码逻辑的正确性,优先使用逻辑仿真(mo

    2024年02月05日
    浏览(41)
  • keil5 Logic Analyzer逻辑分析仪端口输出波形观测

    在选项卡中找到debug,如果是软件仿真,就要选择左边的\\\"Use Simulation\\\"。下面的\\\"Dialog DLL\\\" 和 “Parameter” 也需要更改;\\\"Dialog DLL\\\"软件仿真填入的是\\\"DARMSTM.DLL” ,硬件仿真填入“TARMSTM.DLL” 。 “Parameter” 为 “-pSTM32F103C8”填的是芯片型号,以TM32F108C8T6为例。 设置好后点击OK 打开

    2024年02月16日
    浏览(43)
  • 硬件设计 之 CAN通信-DSView逻辑分析仪使用-CAN波形测试

    ** CAN,Controller Area Network,控制器局域网是用于解决汽车众多控制部件之间的数据交换而开发的一种串行数据通信总线。 ** can总线采用差分电压传输数据,分别是CANH和CANL两根总线。总线上的信号电平分为这两条线之间的差分电压。 隐形电平:两条线静态时均为2.5V左右,压差

    2024年02月02日
    浏览(52)
  • 《AP音频分析仪的使用》

    AP,音频分析仪器(AudioPrecision),是指既能够测量话筒、音频功放、扬声器等各类单一音频设备的各种电声参数,也能测试组合音响、调音台等组合音频设备的整体性能的分析类仪器。所谓音频设备就是将实际的声音拾取到将声音播放出来的全部过程中需要用到的各类电子设

    2023年04月09日
    浏览(39)
  • APx500音频分析仪硬件简介

    两通道模拟输出,两通道或以上的模拟输入接口 线性编码数字音频接口(AES/EBU,TOSLINK,SPDIF)Linear PCM 脉冲密度调制码流(需要APx-PDM选件支持) Bluetooth 蓝牙音频码流(需APx-BT选件支持) 最高支持192kHz数字采样音频(APx555最高支持216kHz) APx500 v4.0 新增Bench模式,有效帮助工程师

    2024年04月12日
    浏览(46)
  • CAN总线分析仪使用及调试方式

    1、软件安装 工具下载地址: 关注公众号:Kevin的学习站;后台发送:CAN总线分析仪;即可获取软件! 安装: 1、以管理员身份运行软件;选择简体中文安装。 点击下一步; 勾选“我同意此协议”选项,点击下一步; 选择所需的安装路径,点击下一步 USB_CAN TOOL:调试软件,

    2024年02月10日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包