- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
How to define a condition under which SignalTap would stop acquisition and pushed data through jTag without waiting for a storage buffer to be fully filled?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Just click the stop button. Whatever activity is currently occurring on the tapped signals will be displayed on the Data tab of the tool.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for your reply.
Unfortunately, it's no solution for me: I need to perform many acquisitions and SignalTap is controlled by tcl commands. As far as I know, tcl interface doesn't allow to stop the acquisition.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@sstrell: Thank you for the link. I overlooked the stop tcl command.
Anyway, it doesn't suit me well, as I would need to stop the acquisition arbitrary in the script. I basically want to open the acquisition window for a certain period (controlled by the trigger signal) and store (using storage qualifier) certain events occurring on the spied lines. The acquisition window is periodical (~1kHz) and I need to acquire events belonging only to a single acquisition window. What I miss, is a stop acquisition conditional logic in SignalTap which would start pushing data over jTag to PC.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You can certainly do this. You can either use conditional statements in Tcl (remember, it's a full scripting language that includes loops and conditionals; this is my favorite Tcl reference guide: http://tmml.sourceforge.net/doc/tcl/) or set up a state machine trigger in Signal Tap.
#iwork4intel
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
At the level of the tcl script, I don't have access to the trigger signal indicating the acquisition window. Moreover, software delays may be in this case just at the edge. However, the machine trigger in SignalTap would be a perfect solution. Unfortunately, I haven't found in the documentation how to set up a stop acquisition condition. Could you share with me some reference?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I tried the following state-based trigger:
state ST1:
if (start_acq)
goto ST2;
state ST2:
begin
if( stop_acq && store )
begin
start_store;
stop_store;
trigger 0;
end
else if (stop_acq)
begin
trigger 0;
end
else if (store)
begin
start_store;
stop_store;
end
end
However, it doesn't work as expected:
- although I expected only a single acquisition window, SignalTap returns many (segments). One could still filter out only a single acquisition window, however, when waveform is dumped to a .csv files (for further analysis) the information about segments is lost
- even with post-fill-count argument of the trigger call set to 0, SignalTap waits for at least one valid sample. It means that if the sample doesn't occur, SignalTap will wait forever
EDIT: If I use `trigger 1`, it actually seems to work as intended. The only inconvenience is it needs to wait for an extra sample from the next acquisition window.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page