Forum Discussion

FabianL's avatar
FabianL
Icon for Occasional Contributor rankOccasional Contributor
8 months ago
Solved

Timing Violations in JTAG Signals

Hello,

I have a Arria10 FPGA design using Platform Desginer which includes a Avalon to JTAG Brdige.

I have added a jtag.sdc file to the project based on this guideline: JTAG Signals

and set all the "--customize here--" sections according to my design (see attached sdc file).

However the Timing Analyzer gives me several setup violations on JTAG signals:

-18.207	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_8	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.582	4.240	Slow 950mV 100C Model
-18.206	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_9	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.582	4.239	Slow 950mV 100C Model
-18.157	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_7	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.582	4.190	Slow 950mV 100C Model
-18.142	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_10	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.582	4.175	Slow 950mV 100C Model
-18.123	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_11	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.582	4.156	Slow 950mV 100C Model
-18.120	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_6	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.582	4.153	Slow 950mV 100C Model
-17.207	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_1	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.125	3.697	Slow 950mV 0C Model
-17.136	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_3	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.125	3.626	Slow 950mV 0C Model
-17.069	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_2	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.125	3.559	Slow 950mV 0C Model
-17.064	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM_4	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.125	3.554	Slow 950mV 0C Model
-16.972	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|int_tdo_reg~LRTM	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-2.125	3.462	Slow 950mV 0C Model
-16.075	auto_fab_0|alt_sld_fab_0|alt_sld_fab_0|jtagpins|atom_inst|atom~jtag_reg__nff	altera_reserved_tdo	altera_reserved_tck (INVERTED)	altera_reserved_tck (INVERTED)	33.333	-0.450	4.240	Slow 950mV 0C Model

The listed registers look similar but not identical to the security reg listing in the jtag.sdc line 86-89 which are to be ignored.

So I'm not sure if these errors are actual errors caused, e.g. by a too high JTAG clock rate, or if these registers are just missing a respective false path due to encrypted core.

The Timing Analyzer does list the falling paths as encrypted:

Please advise how to deal with these JTAG signal in timing analysis.

Thanks

Fabian

  • After internal testing and discussion, we’ve confirmed the following for Arria 10 devices:

    • Only the on-board USB-Blaster II is capable of supporting up to 24 MHz.
    • The off-board USB-Blaster II cannot reach 24 MHz due to certain limitations
    • That said, if the TDO pin of the Arria 10 is driving the TDI of another device through a short trace, it can still support up to 24 MHz.

    In the SDC files, you’ll notice a placeholder such as <<customer here>>. This needs to be updated based on the actual trace length measurements on your board. If you're targeting 24 MHz, the timing constraints will need to be tighter to meet the higher frequency requirements.

    I'll attach a sample SDC file that helps close timing at higher speeds. Let me know if you have any further questions.


26 Replies