Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
16875 Discussions

Signal Tap Logic Analyzer II Trigger Condition

Hamza_52
Beginner
8,270 Views

Hi i am working with DE1-SoC Cyclone V SoC FPGA Board and i am using quartus Prime Lite Edition. I am trying to use Signal Tap Logic Analyzer II but somehow i am not able to configure it correctly my trigger condition get triggered successfully but the data log in the logic analyzer is just the last value rather than all the previous values occur before trigger condition. What can be possible thing i am missing. Any guide on this topic will be very helpful.

 

thanks in advance

 

Labels (1)
0 Kudos
18 Replies
sstrell
Honored Contributor III
8,254 Views

What do you have the trigger position in the .stp file set to?  If you want to see more captured data from before the trigger occurs (to the right of the trigger in the waveform view), set it to the post-trigger position.

However, none of the 3 trigger position options would only show a single value unless either your signals are not toggling around the time of the trigger or you've set the size of the buffer incorrectly (only 1 sample perhaps?).

Also, of course, your sampling clock has to toggle so data gets captured at each rising edge.

0 Kudos
Hamza_52
Beginner
8,213 Views

Hi,

I have attached the snap of all the configuration set in my stp file. I have also tried all 3 different position but non of them work.

 

 

0 Kudos
ShengN_Intel
Employee
8,235 Views

Hi,


Check this https://www.intel.com/content/www/us/en/docs/programmable/683819/22-4/continuous-mode-and-a-storage-qualifier.html

Make sure you're using non-segmented buffer in continuous mode instead of non-segmented buffer using a storage qualifier and segmented buffer. In the continuous data capture, Trig1 occurs several times in the data buffer before the Signal Tap logic analyzer trigger activates. The buffer must be full before the logic analyzer evaluates any trigger condition.


Thanks,

Best Regards,

Sheng


0 Kudos
sstrell
Honored Contributor III
8,211 Views

So what are you expecting to see?

You have stop~0 set as a trigger in (like trigger condition 0).  You don't show what you have set up for your main trigger condition from the Signal Tap node list.

0 Kudos
Hamza_52
Beginner
8,208 Views

My logic is i have implemented a simple counter which count from zero and count till 15. Once it reach 15 it enable the stop bit which should act a trigger to stop my acquisition. As the FPGA clock is of 50MHZ so to slow down the count i have used clock divider which generate a clock of 1 Hz and my counter is updating on every posedge of the 1 Hz clock. I am trying to see all the values of my counter on Signal Tap which i am unable to see.

 

0 Kudos
sstrell
Honored Contributor III
8,205 Views

CLOCK_50 should not be in the node list.  You already have that as the capture clock.  I think perhaps you mean to put the 1Hz clock as the capture clock and have CLOCK_50 in the node list, but then the capture clock would be way too slow to capture CLOCK_50.  So simply have the 1Hz clock as the capture clock and remove CLOCK_50 from the node list.  With CLOCK_50 as the sampling clock, you're filling up the buffer long before there's even one cycle of the counter.

You also don't need the trigger in.  Disable that.

0 Kudos
Hamza_52
Beginner
8,196 Views

Yes regarding the clock you are right. I was also thinking the same that may be my buffer is getting overwrite with 50 Mhz clock thats why i am only able to see one sample. 

 

But disabling the trigger in so how the data acquisition will stop as i dont want any extra samples

0 Kudos
Hamza_52
Beginner
8,195 Views

As the reason i am testing trigger in because i want to run a C program on one of my design which have to stop after  a particular condition is match or if all the lines of the code is executed. I dont want to stop sampling before that and i also dont want samples after that

0 Kudos
sstrell
Honored Contributor III
8,195 Views

You already have stop in the node list as your trigger.  Trigger in is only used to get a trigger from another instance of the logic analyzer or from some other external signal that you're not tapping in the node list.  You don't need to use it here.


0 Kudos
sstrell
Honored Contributor III
8,193 Views

OK, then keep it.

0 Kudos
Hamza_52
Beginner
8,185 Views

ok as you said that as i have stop signal in my node list so i dont have to used it as trigger in. What if remove it from node list and only use it as trigger in so will that stop the acquisition as soon as stop value gets to 1?

0 Kudos
sstrell
Honored Contributor III
8,180 Views
No. Trigger in is just a pre-qualifier for checking trigger condition 1.
0 Kudos
Hamza_52
Beginner
8,179 Views

so than how does these trigger logic work?

 

As i have tried three different positions of sampling data and i can see that it log data before trigger and after trigger as well based on my buffer value.

0 Kudos
sstrell
Honored Contributor III
8,177 Views

So what's the problem?  Left-click to zoom in.

0 Kudos
Hamza_52
Beginner
8,165 Views

I mean i am just trying to understand that how it is working as i cant always make sure that the program i am running will be complete in 64 samples  or it will take more than that so isnt there any way to set up such a configuration which works as per my design requirements 

0 Kudos
sstrell
Honored Contributor III
8,163 Views
I don’t understand. You can make the buffer store more samples or you could use storage qualification to only capture relevant samples and drop samples you don’t care about.
0 Kudos
Hamza_52
Beginner
8,136 Views

ok thanks for clearing my doubts. I will get back to you if i have any more queries.

 

0 Kudos
mwac__
Beginner
5,653 Views

did you get the point to address the issue?

0 Kudos
Reply