get_pins command not returning results
Hi,
I am using Quartus Prime v19.1 Standard Edition.
I can see in Quartus Timing Analyzer that I have an unconstrained clock, more specifically the following one:
adbg_top:dbg_top|adbg_wb_module:i_dbg_wb|adbg_wb_biu:wb_biu_i|str_sync_wbff2
I wanted to add a command in my SDC to false_path it, so I tried the following:
set_false_path -from [get_pins {dbg_top|i_dbg_wb|wb_biu_i|str_sync_wbff2}] -to [get_pins *]
The command does not work as Timing Analyzer complains about "Argument <from> is an empty collection".
Moreover, when I am trying to run the following command in Timing Analyzer:
get_pins {dbg_top|i_dbg_wb|wb_biu_i|str_sync_wbff2}
I get back a message saying it could not be matched with a pin. How is that possible? Is it because of optimization of Quartus during the Compilation of the design? Then why does it output the initial name and not the final after the optimization? How can I false_path it in first place?
It is not clear at least to me, how the "get_pins" command works.
Can anyone explain? I should mention that Quartus is really challenging when it comes to TCL commands.
After several tries I managed to "find" the Q pin of the register by using the "-compatibility_mode" option of the "get_pins" command. This is the one that helps traverse the hierarchies of modules, and the command I used was the following:
get_pins -compatibility_mode dbg_top|i_dbg_wb|wb_biu_i|str_sync_wbff2|q
where "str_sync_wbff2" is the name of the register and "q" is the output of the ff that acts as a clock.
After that I was able to apply a constraint on it.