- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am facing a problem when I enable Signal Tap Logic Analyzer to monitor I/Os. I have a relatively big project (with tens of modules) and it operates normally when there is no Signal Tap Logic Analyzer. But when I enable the feature to monitor the I/Os, I've identified a malfunction in one module responsible for LPC-to-UART conversion. I cannot confirm the proper functioning of other modules as I am unable to monitor them. The malfunction in the specified module is evident through unsuccessful UART read/write operations.
Could Signal Tap Logic Analyzer potentially interfere with the FPGA's normal operation?
Note 1: I am utilizing the main 24MHz input clock as the sampling rate in Signal Tap Logic Analyzer. This clock is also employed in all modules. The Signal Tap RAM type is set to Auto, and the sample depth is 64.
Note 2: When I reduce the number of signals to monitor in Signal Tap, the UART reading operation starts to function correctly. However, writing operations remain problematic. This suggests that the level of interference changes based on the number of monitored signals.
Thanks,
Reza,
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
this usually happens if the design has timing problems, either explicite (failing timing constraints) or hidden (not correctly synchronizing external signals or signals crossing clock domains).
Adding signal tap changes routing of the complete design and can therefore reveal hidden problems.
Does the design without and with signal tap pass timing analysis? An UART usually involves external signals, e.g. RxD. Are they synchronized correctly before entering your logic?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Timing Analyzer shows some violation in UART section. This might be the problem.
As I am new to Intel FPGA, could you please clarify what is meant by "synchronized correctly before entering your logic"?
Thanks,
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
synchronization. Falling edge of start bit will usually affect more than one register bit. If the edge occurs near to active UART clock edge, there's a good change that some registers see start bit at one clock and others at the next, causing unexpected and possibly even unrecoverable states. You don't need metastability to achieve this, just normal clock and signal delay skew. The solution is to synchronize all foreign signals like RxD with a 2 or 3 register chain. One register is good to get rid of 99.9 % of failures, the others are needed to fight metastability.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
May be you can try to increase the pipeline factor in the Signal Configuration pane of Signal-Tap to boost the fMAX check this link https://www.intel.com/content/www/us/en/docs/programmable/683819/23-4/specifying-pipeline-settings.html
Thanks,
Best Regards,
Sheng
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Do you have any further concern or consideration?
Thanks,
Best Regards,
Sheng
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Sheng,
Not at the moment, I need to address a timing issue in my project to see if I can resolve the problem. Thank you for your assistance.
Also, thanks to FvM for his time
Thanks,
Best Regards,
Reza,

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