cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Adventurer
Adventurer
1,472 Views
Registered: ‎02-08-2016

report_cdc tool unreliable

Jump to solution

Hi,

 

I am using vivado 2017.2

 

When I use the report_cdc tool it appears unreliable.

 

1) when I examine output of report tool, I can double click on a line of the "CDC details"  output and a schematic will be generated.

Great! Except I can only do this one one or two lines, then no more schematics are produced. The tcl command line shows that

the command has been autogenerated....but no schematic appears. See example of command below.

 

2) when I corrected some cdc problems by fixing critical warnings indicated by tool, I used

set_property ASYNC_REG 1 [ get_cells -hier "*my_problem_cells*" ]

then checked that these properties had indeed been set.

then I used

"force up to date " on the design run and re-ran the report_cdc tool. The result was the same number of warnings after correcting the problem.

Please advise how to make this tool work correctly.

 

Thanks

Simon

 

 

 

 

show_schematic -name {Schematic - Clock Domain Crossing} -pin_pairs [list [get_pins {bh2_fpga_core/bh2_core/bh2_mod_0/m_bh2_sys_hydra_0/m_bh2_hydra_0/full_hydra.m_phy2_0/m_ppu2_top_0/m_ppu_0/m_ppu2_0/u_Ppu2_rtl/Ldpcu_1/LdpcDecoderImp_1/ippu_hard_ldpcdecoder/fast_slow_fifo_cfg_in/bwt_sync_bool_addrw_shaddow_update_sync_0/meta_harden_0/i/meta_q_reg[0]/Q}] [get_pins {bh2_fpga_core/bh2_core/bh2_mod_0/m_bh2_sys_hydra_0/m_bh2_hydra_0/full_hydra.m_phy2_0/m_ppu2_top_0/m_ppu_0/m_ppu2_0/u_Ppu2_rtl/Ldpcu_1/LdpcDecoderImp_1/ippu_hard_ldpcdecoder/fast_slow_fifo_cfg_in/bwt_sync_bool_addrw_shaddow_update_sync_0/meta_harden_0/i/sync_q_reg_reg[0]/D}] [get_pins {bh2_fpga_core/bh2_core/bh2_mod_0/m_bh2_sys_hydra_0/m_bh2_hydra_0/full_hydra.m_phy2_0/m_ppu2_top_0/m_ppu_0/m_ppu2_0/u_Ppu2_rtl/Ldpcu_1/LdpcDecoderImp_1/ippu_hard_ldpcdecoder/fast_slow_fifo_cfg_in/bwt_sync_bool_addrw_shaddow_update_sync_0/meta_harden_0/i/meta_q_reg[0]/Q}] [get_pins {bh2_fpga_core/bh2_core/bh2_mod_0/m_bh2_sys_hydra_0/m_bh2_hydra_0/full_hydra.m_phy2_0/m_ppu2_top_0/m_ppu_0/m_ppu2_0/u_Ppu2_rtl/Ldpcu_1/LdpcDecoderImp_1/ippu_hard_ldpcdecoder/fast_slow_fifo_cfg_in/bwt_sync_bool_addrw_shaddow_update_sync_0/meta_harden_0/i/sync_q_reg_reg[0]/D}] [get_pins bh2_fpga_core/bh2_core/bh2_mod_0/m_bh2_sys_hydra_0/m_bh2_hydra_0/full_hydra.m_phy2_0/m_ppu2_top_0/m_ppu_0/m_ppu2_0/u_Ppu2_rtl/Ldpcu_1/LdpcDecoderImp_1/ippu_hard_ldpcdecoder/fast_slow_fifo_cfg_in/addrw_shaddow_update_reg/Q] [get_pins {bh2_fpga_core/bh2_core/bh2_mod_0/m_bh2_sys_hydra_0/m_bh2_hydra_0/full_hydra.m_phy2_0/m_ppu2_top_0/m_ppu_0/m_ppu2_0/u_Ppu2_rtl/Ldpcu_1/LdpcDecoderImp_1/ippu_hard_ldpcdecoder/fast_slow_fifo_cfg_in/bwt_sync_bool_addrw_shaddow_update_sync_0/meta_harden_0/i/meta_q_reg[0]/D}] [get_ports CLK_P_0] [get_pins U_PROFPGA_CTRL/CLK0_PAD_I/DIFFINBUF_INST/DIFF_IN_P] [get_pins U_PROFPGA_CTRL/CLK0_PAD_I/DIFFINBUF_INST/O] [get_pins U_PROFPGA_CTRL/CLK0_PAD_I/IBUFCTRL_INST/I] [get_pins U_PROFPGA_CTRL/CLK0_PAD_I/IBUFCTRL_INST/O] [get_pins MMCME3_ADV_inst/CLKIN1] [get_pins MMCME3_ADV_inst/CLKOUT3] [get_pins fpga_mcu_clock_BUFG_inst/I] [get_pins fpga_mcu_clock_BUFG_inst/O] [get_pins bh2_fpga_core/bh2_core/bh2_mod_0/m_bh2_sys_hydra_0/m_bh2_hydra_0/full_hydra.m_phy2_0/m_ppu2_top_0/m_ppu_0/m_ppu2_0/u_Ppu2_rtl/Ldpcu_1/LdpcDecoderImp_1/ippu_hard_ldpcdecoder/fast_slow_fifo_cfg_in/addrw_shaddow_update_reg/C] [get_ports CLK_P_0] [get_pins U_PROFPGA_CTRL/CLK0_PAD_I/DIFFINBUF_INST/DIFF_IN_P] [get_pins U_PROFPGA_CTRL/CLK0_PAD_I/DIFFINBUF_INST/O] [get_pins U_PROFPGA_CTRL/CLK0_PAD_I/IBUFCTRL_INST/I] [get_pins U_PROFPGA_CTRL/CLK0_PAD_I/IBUFCTRL_INST/O] [get_pins MMCME3_ADV_inst/CLKIN1] [get_pins MMCME3_ADV_inst/CLKOUT1] [get_pins fpga_ldpc_clock_BUFG_inst/I] [get_pins fpga_ldpc_clock_BUFG_inst/O] [get_pins {bh2_fpga_core/bh2_core/bh2_mod_0/m_bh2_sys_hydra_0/m_bh2_hydra_0/full_hydra.m_phy2_0/m_ppu2_top_0/m_ppu_0/m_ppu2_0/u_Ppu2_rtl/Ldpcu_1/LdpcDecoderImp_1/ippu_hard_ldpcdecoder/fast_slow_fifo_cfg_in/bwt_sync_bool_addrw_shaddow_update_sync_0/meta_harden_0/i/meta_q_reg[0]/C}] ]

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Adventurer
Adventurer
2,057 Views
Registered: ‎02-08-2016

Re: report_cdc tool unreliable

Jump to solution

Hi Yashp,

 

Thanks for your reply.

 

It seems if you run report_cdd, make changes then force up to date, it has no effect on implementation.

So it is always necessary to rerun implementation.

 

To create schematic for report_cdc, it is necessary to double click on line of CDC detail report, then go the Path Properties window and right click on the Path nnn , then select schematic. If just select schematic after right click on detail line of report, schematic is not ALWAYS created.

 

Simon

 

View solution in original post

0 Kudos
2 Replies
Highlighted
Moderator
Moderator
1,443 Views
Registered: ‎01-16-2013

Re: report_cdc tool unreliable

Jump to solution
Hi,

Can you check the property you have set to the cell is honored or not?
Do report_property on the cell you have set the async_reg and see. As far as I remember after setting async_reg you need to re-run the implementation but you are just forcefully updating it.

After setting the property re-run the implementation and generate CDC report I hope this will get resolved.

Regarding inconsistency of generating schematic, I do not have clue as of now. I have never come across this issue. I will check and if I find something I will update here.

Thanks,
Yash
0 Kudos
Highlighted
Adventurer
Adventurer
2,058 Views
Registered: ‎02-08-2016

Re: report_cdc tool unreliable

Jump to solution

Hi Yashp,

 

Thanks for your reply.

 

It seems if you run report_cdd, make changes then force up to date, it has no effect on implementation.

So it is always necessary to rerun implementation.

 

To create schematic for report_cdc, it is necessary to double click on line of CDC detail report, then go the Path Properties window and right click on the Path nnn , then select schematic. If just select schematic after right click on detail line of report, schematic is not ALWAYS created.

 

Simon

 

View solution in original post

0 Kudos