• FPGA的Signaltap 文件


    quartus中的signal tap 能够方便的抓取模块中的信号

    向工程添加一个Signaltap 的文件 ,点击菜单 File->New..., 在弹出的界面中选择 SignalTap II Logic Analyzer File。

     软件会弹出如下的 SignalTap 的界面:

     首先我们需要为 SiganlTap 选择一个采样时钟,采样时钟的选择很关键,一般选择模块
    中的系统时钟。一般来讲,采样时钟频率越高,单位时间内采样的点越多,采样到的波形就越
    正确。但是采样的点多的话,因为 FPGA 的资源有限, SignalTap 相应的采样深度就会降低。

    在 SignalTap II Logic Analyzer 界面里点击 Clock 右边的 按钮来选择采样时钟。

     在弹出的 Node Finder 界面里,设置 Filter 一栏为 SignalTap II:pre-synthesis 项,再在
    Named 栏输入采样时钟的信号名。这里我们使用 FPGA的输入时钟 CLK_50M 作为 SignalTap
    的采样时钟。然后点击左边的 List 按钮, Nodes Found 窗口中会出现 CLK_50M 的信号。

     选择中 Nodes Found 窗口中的 CLK_50M,再点击>按钮, CLK_50M 就会移到左边的
    Selected Nodes 里。然后点击 OK 再返回 SignalTap 配置界面。

     数据的采样深度 Sample depth 的值设置为 8K, 就是采样 8000 个数据。这个值越大,
    FPGA 消耗的资源会越大。

     再双击 Setup 的空白处,我们来添加想要观测的信号。

     在弹出的 Node Finder 界面里, Filter 选择 SignalTap II: pre-synthessis 项, Named
    栏输入*RdData。再点击 List 按钮,我们可以在 Nodes Found 界面找到 RdData 的信号名。

     再点击 OK 按钮返回。 这样 SignalTap 就配置完了,我们保存 SignalTap 文件为 stp1.stp。

     点击 Yes, SignalTap stp1.stp 会自动添加到项目中。

     关闭 SignalTap 界面,返回到 Quartus 并重新编译项目,这里需要注意,我们以后每次对
    SignalTap 的配置做修改,比如增加其它的观察信号,都需要重新编译项目。

    编译成功后,我们再双击 Files 界面里的 stp1.stp 文件, 打开 SignalTap。

     连接 USB Blaster 下载器并打开开发板的电源,如果 USB Blaster 连接正常,在 SignalTab
    的 Hardware 里能够找到 USB-Blaster 设备,并选择它。

     如果开发板连接正常,在 Device:一栏中会显示 FPGA 的芯片型号。

     点击 SOF Manager 左边的 按钮,并选择生成的 eeprom_test.sof 文件。

     点击 SOF Manager 左边的 下载按钮,下载 eeprom_test.sof 文件到 FPGA。

     点击 Run Analysis 按钮开始运行一次 SignalTap 的数据采集。 Autorun Analysis 为可以重复触发

     在 Data 的波形界面,我们可以看到 rData 的数据为 0x12, 说明从 EEPROM 地址 0 中读
    出的数据就是我们在程序中写入的数据 0x12。

     我们也可以在 signaltap 上添加其它信号,比如添加 SCL 和 SDA 信号,这里我们设置
    SDA 的下降沿来触发,这样我们就可以看到 SCL 和 SDA 的 I2C 的波形了。

     重新编译再下载 sof 文件后,再运行 chipscope,按一下开发板上的 KEY1 按键,触发
    到的 I2C 的总线信号如下,先 SDA 变低,然后 SCL 变低,再发送 A0 的 Device 地址

     在 Data 窗口右键点击 addata,在出现的菜单里选择 Bus Display Format->Unsigned
    Line chart。是否为有符号或者无符号看具体情况,而且还可以设置"LSB on Top, MSB on Bottom" 等,看数据具体情况计算数值的。
    这样 addata 的数据就会以波形的形式显示出来。

     这时在 Data 窗口我们可以看到 AD 输入的正选波信号了。

    导出数据,在SignalTap的data窗口中选中要导出的数据,右键选择create SignalTapII List file。

     

  • 相关阅读:
    MD5 初探。
    VFW程序分析
    IE版本简单兼容 JS闭包和JS对象解说。
    句柄和指针
    超时时间已到。在从池中获取连接之前超时时间已过。出现这种情况可能是因为所有池连接都已被使用并已达到最大池大小
    DataGrid模板列上的ImageButton 不能触发ItemCommand事件
    html转换成文本
    几种取数据库随机记录的方法
    打开.net时CPU占用率100%的问题个人处理办法
    强制输出wxl
  • 原文地址:https://www.cnblogs.com/caiya/p/14954545.html
Copyright © 2020-2023  润新知