cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
gunnerone
Observer
Observer
799 Views
Registered: ‎03-12-2013

Post Synth TCL script can't find object

Jump to solution

I created a post synthesis tcl script to disconnect and reconnect a couple nets.  The script is pretty simple:

disconnect_net -objects {design_1_i/gig_ethernet_pcs_pma_mtr_0/U0/pcs_pma_block_i/transceiver_inst/gtwizard_inst/U0/gtwizard_i/gt0_GTWIZARD_i/gtxe2_i/RXPOLARITY}
connect_net    -objects {design_1_i/gig_ethernet_pcs_pma_mtr_0/U0/pcs_pma_block_i/transceiver_inst/gtwizard_inst/U0/gtwizard_i/gt0_GTWIZARD_i/gtxe2_i/RXPOLARITY} -net {design_1_i/gig_ethernet_pcs_pma_mtr_0/U0/pcs_pma_block_i/transceiver_inst/gtwizard_inst/U0/gtwizard_i/gt0_GTWIZARD_i/<const1>}

When I run the script in the tcl console after synthesis it runs great and does what I want.  But when I specify my file in Project Settings->Synthesis->tcl.post and run synthesis I get errors when it runs the script that it can't find the objects:

WARNING: [Coretcl 2-1467] Could not find any object matching design_1_i/gig_ethernet_pcs_pma_mtr_0/U0/pcs_pma_block_i/transceiver_inst/gtwizard_inst/U0/gtwizard_i/gt0_GTWIZARD_i/gtxe2_i/RXPOLARITY
WARNING: [Coretcl 2-87] No pins or ports found to disconnect.
WARNING: [Coretcl 2-1467] Could not find any object matching design_1_i/gig_ethernet_pcs_pma_mtr_0/U0/pcs_pma_block_i/transceiver_inst/gtwizard_inst/U0/gtwizard_i/gt0_GTWIZARD_i/<const1>

Why is it different when the script is run automatically vs when I manually run it in the tcl console?  How do I fix this?

0 Kudos
1 Solution

Accepted Solutions
hemangd
Moderator
Moderator
753 Views
Registered: ‎03-16-2017

Hi, @gunnerone,

connect_net command allows the user to connect a specified net to one or more pins or ports in the netlist of an open Synthesized or implemented Design. 

When you add it in synthesis tcl.post the synthesized design is not opened yet and synthesis uses different memory models than the rest of the tool. Hence, you are getting errors with these commands. 

Hence, it is recommended to use these commands with opt_design tcl.pre. Add your script there and check.

 

Regards,
hemangd

Don't forget to give kudos and mark it as accepted solution if your issue gets resolved.

View solution in original post

3 Replies
hemangd
Moderator
Moderator
754 Views
Registered: ‎03-16-2017

Hi, @gunnerone,

connect_net command allows the user to connect a specified net to one or more pins or ports in the netlist of an open Synthesized or implemented Design. 

When you add it in synthesis tcl.post the synthesized design is not opened yet and synthesis uses different memory models than the rest of the tool. Hence, you are getting errors with these commands. 

Hence, it is recommended to use these commands with opt_design tcl.pre. Add your script there and check.

 

Regards,
hemangd

Don't forget to give kudos and mark it as accepted solution if your issue gets resolved.

View solution in original post

ashishd
Xilinx Employee
Xilinx Employee
733 Views
Registered: ‎02-14-2014

Hi @gunnerone ,

Can you share output script generated with below command -

write_bd_tcl ./recreate.tcl

Script will be generated in current working directory. 

Regards,
Ashish
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos
gunnerone
Observer
Observer
700 Views
Registered: ‎03-12-2013
Thank you, that did the trick!
0 Kudos