Forum: FPGA, VHDL & Co. Quartus set_false_path woher Nodes


von Martin O. (ossi-2)


Lesenswert?

In einem Design möchte ich die Verbindung zwischen zwei Teilen als 
"false_path" vereinbaren. Diese Verbindung ist schuld an der 
Timing-Violation (most violating path).
Ich habe mir die Nodes aus dem "Most violating path" des Timing-Report 
geholt.
Dann habe ich im SDC-file geschrieben:

set_false_path -from
[get_pins 
{fiftyfivenm_adcblock_primitive_wrapper:adc1|wire_from_adc_dout[0]}]
 -to [get_pins {doutDelayed}]

Ich erhalte u.a. die Meldung:

Warning (332174): Ignored filter at SDC1.sdc(17): 
fiftyfivenm_adcblock_primitive_wrapper:adc1|wire_from_adc_dout[0] could 
not be matched with a pin

Anscheinend findet der Timinganalyzer die Nodes nicht. Wie spezifiziere 
ich die nodes richtig ?

von Markus F. (mfro)


Lesenswert?

Martin O. schrieb:
> set_false_path -from
> [get_pins
> {fiftyfivenm_adcblock_primitive_wrapper:adc1|wire_from_adc_dout[0]}]
>  -to [get_pins {doutDelayed}]

sdc-Namen beginnen beim Toplevel. Bei beiden Pins fehlt also "vorne" 
was; wenn der Name sonst eindeutig ist (bei "doutDelayed" nicht 
unbedingt sichergestellt) kannst Du dafür auch einen "*" hinschreiben.

von Martin O. (ossi-2)


Lesenswert?

Ich verstehe nicht ganz, was Deiner Meinung nach fehlt. Die beiden 
angegebenen "Teile" liegen im  TopLevel, soweit ich das verstehe. Mein 
Fall
ähnelt dem ALTERA Beispiel:

# Set a false-path for a specific path
set_false_path -from [get_pins regA|clk] -to [get_pins regB|aclr]

von Markus F. (mfro)


Lesenswert?

Am besten, Du suchst im RTL Viewer (post fitting) nach den Nodes. Dann 
den Namen dort rauskopieren.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.