Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Valued Contributor III
1,158 Views

[SignalTap] How to change Trigger Conditions on the fly?

Hi All, 

 

Let's say I defined several signals https://alteraforum.com/forum/attachment.php?attachmentid=14705&stc=1 to be the triggers in the SignalTap (triggered ever on the rising or falling edges). https://alteraforum.com/forum/attachment.php?attachmentid=14706&stc=1  

 

Now during the debug, I want that the SignalTap will be triggered just by a single pre-defined trigger signal (not order to each of them). 

 

How can I do so? Is unchecking the rest of the signals in the 'Trigger Enable' column in the SignalTap enough? After doing that, should I save the SignalTap file and recompile the whole design? Is there a more flexible way to re-define trigger signals?  

 

Thank you!
0 Kudos
4 Replies
Highlighted
Valued Contributor III
36 Views

the trigger configuration is possible in real time during debug. You just have to stop data acquisition, configure you trigger conditions the way you want and then run again (the acquisition not quartus compilation). But if you want to change the way this triggers are evaluated ( from "and" to "or " let's say) you'll have to rerun the compilation.(because some rtl logic will change in SigTap autofab or whatever...) 

Unchecking "trigger enable" will disable the trigger ? from the name , that would be the logic behaviour. I have never tried that to be honest. But I'm sure that changing the condition for that "signal" to "don't care" would do the job.
0 Kudos
Highlighted
Valued Contributor III
36 Views

 

--- Quote Start ---  

You just have to stop data acquisition, configure you trigger conditions the way you want and then run again. 

--- Quote End ---  

 

1) should I save the SignalTap file (by clicking on the save button) so that the new trigger configuration will take affect? As far as I remember, if the SignalTap file has been changed (new trigger conditions, let's say from the rising edge to the falling one), Quartus requires to recompile the whole design since the SignalTap file has been changed and now it does not match one, which was programmed/burned to the device. Or just I need to leave the SignalTap file unsaved after changing the new trigger conditions? From my experience, the 'Rapid Compilation' never works... 

2) If I understood correctly, defining the trigger condition is not important during the SignalTap file configuration. The only important things are what the signals/nodes will be added to the SignalTap and what the logic between them (OR, AND, etc...). Correct? 

Thank you!
0 Kudos
Highlighted
Valued Contributor III
36 Views

Btw, what's Lock Mode in the SignalTap (a drop down menu upper the "Data Enable", "Trigger Enable" columns)?

0 Kudos
Highlighted
Valued Contributor III
36 Views

Simpler answer/solution: at the top of the screenshot, you can see the Lock mode. Set the lock mode to only allow changes that don't require recompilation. This will include level and value trigger conditions and a few other options. Make the changes you need and then just start acquiring again. If something is grayed out when the lock mode is enabled, that means you have to either fully recompile the design or at least run a rapid recompile. 

 

To your second point, setting the trigger condition *is* important during Signal Tap configuration because logic for the logic analyzer gets set up during compilation. However, the lock mode will show you what you can change without recompiling. 

 

A relatively new feature allows you to allocate additional nodes for future use and then just perform a rapid recompile instead of a full compile. For example, if you know you will eventually want to tap 15 nodes even through you're only tapping 10 right now, you can allocate an additional 5 nodes for triggering or data capture when you compile the design. Then later, tap the additional 5 nodes and perform a rapid recompile instead of a full compile.
0 Kudos