Search code examples
fpgaxilinxvirtexxilinx-ise

ChipScope Error - Did not find trigger mark in buffer


Has anybody mentioned data errors, trigger error or upload errors in ChipScope?

I'm using ChipScope (from ISE 14.7) with the IP core flow. So I created 15 different ICON IP cores as ngc files and wrapped them all in a VHDL module. This module chooses by generic with ngc file should be instantiated. So I can easily choose the number of active VIO/ILA cores.

Currently my project has 2 VIO cores and 5 ILA cores, utilizing circa 190 BlockRAMs on a Kintex-7 325T (>400 BlockRAMs in total). When a trigger event occurs, I get sometimes the warning Did not find trigger mark in buffer. Data buffer may be corrupted. or Data upload error.

This error is independent of the trigger mode (normal trigger event, immediate trigger, startup trigger). It seams to happen mostly on Unit 4 (91 bit data * 32k depth + 3 trigger ports each of 4 units). The upload progress bar can stops at any percentage from 1 to 95% as far as I noticed.

Additionally I get hundreds of these warnings:

Xst - Edge .../TransLayer_ILA2_ControlBus<14> has no source ports and will not be translated to ABC.

My google research: ignore them :)

There is also a bug in XST: This warning has no ID and can't be filtered :(

As of now, I tried to fix this problem:

  • Reduced / Increased JTAG speed -> no effect (program device is not effected)
  • recompiled ip core / new ngc file
  • reduced ILA windows size

So what can it be?

P.S. All timings are met.


Solution

  • I found the problem and a solution.

    The problem: I changed one ILA coregenerator file's name and it's contents (modified internal name with an editor). But I missed one parameter so CoreGen generated some sources under the old name. This was still in usage by another ILA core, so one of them got overwritten.

    Solution: I opened every ILA xco file and every cgp file and check all names.