Intel® Quartus® Prime Pro Edition用户指南: 调试工具

ID 683819
日期 9/30/2019
Public
文档目录

2.8.1. 使用分段缓存采集数据

Segmented Acquisition缓存可以对每个采集分段使用各自的触发条件执行采集。 这些缓存使您能够采集长时间内发生的重复事件或事件序列。

每个采集分段都充当一个非分段缓存,激活后连续采集数据。使用分段缓存运行分析时,Signal Tap logic analyzer采集数据缓存中每个采集分段的背靠背(back-to-back)数据。您可以在Sequential触发流程控制或Custom State-based触发流控制中定义触发流程,或者为每个缓存评估触发条件的类型和顺序。

下图显示了一个分段采集缓存,包括表示为四个单独非分段缓存的四个分段。

图 60. 分段采集缓存(Segmented Acquisition Buffer)

Signal Tap logic analyzer完成一个分段的采集后,继续到下一个分段开始新的采集。出现在波形查看器中的数据采集取决于触发条件的发生时间。该图显示了数据采集方法。Trigger标记—Trigger 1,Trigger 2,Trigger 3和Trigger 4—是指Custom State-based触发流程中segment_triggertrigger命令的评估。在顺序流程中,Trigger标记是指在Setup标签中指定触发条件。

如果Segment 1 Buffer是活动分段并且出现Trigger 1,那么Signal Tap logic analyzer立即开始计算Trigger 2。当Segment Buffer 1完成其后填充计数时,或者当Trigger 2计算为TRUE时(无论哪个条件先发生), Segment 2 buffer的数据采集开始。因此,与数据采集序列中的下一个缓存关联的触发条件可以抢占当前活动缓存的填充后计数。这使Signal Tap logic analyzer能够对所发生的所有触发条件进行准确采集。未使用的样本在波形查看器中显示为空白。

图 61. 通过采集分段的抢占的分段采集该图显示了使用顺序流程控制的一个采集,每个分段的触发条件指定为Don’t Care

最后一个分段之前的每个分段仅采集一个样本,这是因为下一个触发条件会立即抢占当前缓存。将所有分段的触发位置都指定为预触发(pre-trigger)(10%的数据在触发条件之前,而90%的数据在触发位置之后)。由于最后一个分段立即以触发条件开始,因此该分段仅包含触发后数据。最后一个分段中的三个空样本是从预触发样本中保留的, 这些预触发样本是Signal Tap logic analyzer分配给缓存的。

对于顺序触发流程,Trigger Position选项应用于缓存中的每个分段。基于状态的自定义触发流程提供了定义触发位置的最大灵活性。通过调整特定于调试要求的触发位置,可最大程度地利用分配的缓存空间。