Quartus® Prime Pro Edition User Guide: Debug Tools

ID 683819
Date 7/08/2024
Public
Document Table of Contents

2.4.5.1. Adding Pre-Synthesis or Post-Fit Nodes

To add one or more pre-synthesis or post-fit signals to the Signal Tap Node list for monitoring:
  1. Click either of the following commands to generate the pre-synthesis or post-fit design netlist:
    • Processing > Start > Start Analysis & Elaboration (generates pre-synthesis netlist)
    • Processing > Start > Start Fitter (generates post-fit netlist)
  2. In the Signal Tap logic analyzer, click Edit > Add Nodes (or double-click any empty white space in the Node List). The Node Finder appears, allowing you to find and add the signals in your design. The following Filter options are available for finding the nodes you want:
    • Signal Tap: pre-synthesis—finds signal names present after design elaboration, but before any synthesis optimizations are performed.
    • Signal Tap: pre-synthesis preserved for debug finds pre-synthesis signals that were marked with the preserve_for_debug pragma, as Preserving Signals for Monitoring and Debugging describes.
    • Signal Tap: post-fitting—finds signal names present after physical synthesis optimizations and place-and-route.
    • Signal Tap: post-fitting preserved for debug finds post-fit signals that were marked with the preserve_for_debug pragma.
  3. In the Node Finder, select one or more nodes that you want to add, and then click the > (Copy to Selected Nodes list) button. You can add all filtered nodes at once by clicking the >> (Copy All to Selected Nodes list) button.
  4. Click Insert. The nodes are added to the Setup tab signal list in the Signal Tap logic analyzer GUI.

    For additional information about the Node Finder, refer to "Using the Node Finder" in Quartus Prime Pro Edition User Guide: Design Compilation .

  5. Specify how the logic analyzer uses the tapped signal (or signals) by enabling or disabling the Data Enable or Trigger Enable options for the signal:
    • Trigger Enable—disabling prevents a signal from being used to trigger the analysis, while still showing the signal's captured data, which saves device logic resources.
    • Data Enable—disabling prevents the capture of data, while still allowing the signal to be userd to trigger the logic analyzier, which reduces the amount of on-chip memory resources required for the Signal Tap buffer.
    Figure 34.  Signal Tap Node List Options for Data Enable and Trigger Enable
  6. Define trigger conditions for the Signal Tap nodes, as Defining Trigger Conditions describes.

The number of channels available in the Signal Tap window waveform display is directly proportional to the number of logic elements (LEs) or adaptive logic modules (ALMs) in the device. Therefore, there is a physical restriction on the number of channels that are available for monitoring. Signals shown in blue text are post-fit node names. Signals shown in black text are pre-synthesis node names.

If you run Analysis and Elaboration more than once, invalid signals appear in red on runs after the first run . Unless you are certain that these signals are valid, remove them from the .stp file for correct operation. The Signal Tap Status Indicator also indicates if an invalid node name exists in the .stp file.

You can monitor signals only if a routing resource (row or column interconnect) exists to route the connection to the Signal Tap instance. For example, you cannot monitor signals that exist in the I/O element (IOE), because there are no direct routing resources from the signal in an IOE to a core logic element. For input pins, you can monitor the signal that is driving a logic array block (LAB) from an IOE, or, for output pins, you can monitor the signal from the LAB that is driving an IOE.

Note:

The Quartus® Prime Pro Edition software uses only the instance name, and not the entity name, in the form of:

a|b|c

not a_entity:a|b_entity:b|c_entity:c