主要内容

捕获的条件

捕获条件是什么?

一个捕获条件是一个逻辑语句,它控制从FPGA捕获哪些数据。当你想要时使用捕获条件:

  • 仅捕获有效数据以使用FPGA数据捕获调试自定义设计。

  • 根据触发条件筛选要捕获的数据。

  • 优化FPGA数据捕获缓冲区的使用。

  • 当您只有几个感兴趣的捕获样本时,可以有效地分析捕获的数据。

捕获条件由对一个或多个FPGA信号的值比较测试组成。例如:

计数器== 100

所有捕获比较都是同步的。当为布尔信号指定边缘条件时,IP核将当前采样值与前一个时钟周期的采样值进行比较。

fifo_full == 'Rising edge'

当条件的所有项在同一时钟周期上都为真时,捕获条件就满足了。每个信号只能使用单个值比较。

receiver_state == 3 OR message_detected == 'High'
fifo_cnt == 0 AND fifo_pop == 'High'

在捕获条件中只能使用单一类型的逻辑运算符。你不能混合条件。

fifo_empty == '上升边缘' OR fifo_full == '上升边缘' OR memctrl_state == 2
receiver_state == 3 AND message_addr == 148 AND pkt_type == 5

您可以在捕获条件中使用多个比较操作符。

fifo_empty == 'Rising edge' OR fifo_full != 'LOW' OR memctrl_state == 2
receiver_state == 3 AND message_addr > 148 AND pkt_type >= 5

你可以使用Xx(不在乎值)捕获条件。在进行比较时,捕获条件忽略使用的位置值X。当捕获条件为时0 b1x1,可能的触发条件值为0 b1010 b111

receiver_state == 3 AND message_addr == 148 AND pkt_type == 0b1X1

配置捕获条件

在生成时,指定您希望在捕获条件中使用哪些信号。您可以使用只包含触发器或同时包含触发器和捕获数据的信号。您可以在捕获时使用指定为触发器的任何信号修改捕获条件。此外,在生成时,您可以包含捕获条件逻辑来使用捕获条件。FPGA上的数据捕获IP核接收MATLAB给出的捕获定义®并配置片上mux来检测捕获事件。

当你使用FPGA数据采集工具或FPGA数据读取器Block,在捕获条件选项卡,选择启用捕获条件逻辑参数,然后设置捕获条件。表中的每一行都是一个信号的值比较。要组合信号值,请使用捕获条件组合运算符。要在此选项卡上显示信号,必须在生成时将信号指定为触发器。

FPGA数据捕获界面显示“捕获条件”选项卡

对于一个hdlverifier。FPGADataReader系统对象™,启用捕获条件逻辑EnableCaptureCtrl财产。属性配置捕获条件setCaptureConditionsetCaptureConditionComparisonOperator,setCaptureConditionCombinationOperator对象的功能。要检查您的配置,请调用displayCaptureCondition对象的功能。

触发器和捕获条件之间的差异

触发条件控制何时从FPGA捕获数据。一旦触发条件满足,数据捕获IP核就从该触发事件捕获数据。捕获条件控制捕获哪些数据。数据捕获IP核在每个时钟周期评估捕获条件,只捕获满足捕获条件的数据。

FPGA数据采集有两种模式:即时模式和触发模式。数据捕获IP核在不检查立即模式下的触发条件的情况下,根据触发模式下的触发条件从FPGA中捕获数据。您可以在这两种模式中提供捕获条件。

使用捕获条件筛选要捕获的数据。在立即模式下,只有在满足某个条件时才使用捕获条件捕获数据。在触发模式下,在满足触发条件后,仅在满足某个条件时才使用捕获条件捕获数据。

数据采集方式 仅限触发条件 仅捕获条件 触发和捕获条件
立即

忽略所有触发条件

在每个时钟周期立即捕获数据

仅当捕获条件为true时捕获数据

忽略所有触发条件

仅当捕获条件为true时捕获数据

触发

等待直到触发条件为真,然后捕获数据

不支持,请使用立即模式

等待直到触发条件为真,然后仅在捕获条件为真时捕获数据

另请参阅

工具

对象

相关的话题

Baidu
map