cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Adventurer
Adventurer
3,830 Views
Registered: ‎02-22-2016

Board parameters not considered correctly when regenerating IP output products


We are using the gig_ethernet_pcs_pma IP core with the kcu105 evaluation board.
Our project is checked into SVN. For (OOC) IP cores we only check the .xci, .vho
and the .dcp file into SVN, which mostly works fine.
However, for the gig_ethernet_pcs_pma it is not possible to regenerate
the IP core correctly using non-project flow.

E.g.

set_property BOARD_PART xilinx.com:kcu105:part0:1.1
...
generate_target all [get_ips gig_ethernet_pcs_pma_0]


does produce a different .vho file than the original/expected one. There are
new ports or ports we don't need nor want (can easily be seen by diffing with the previous revision of the .vho file).

The reason for the problem seems to be that the board parameters are not considered
when regenerating the IP core. This can be seen when opening the IP core in the
Vivado GUI in a manage IP project. When selecting "Re-customize IP" the default
parameters under the board tab are all (re)set to "Custom" and do not show the
values which were originally selected when first generating the IP core.
This feels very much like a bug.

We are using Vivado 2015.4.2 on a Win7 64bit system.

0 Kudos
3 Replies
Highlighted
Xilinx Employee
Xilinx Employee
3,825 Views
Registered: ‎08-01-2008

No in core generation board part not considered. Its only check the target device
Thanks and Regards
Balkrishan
--------------------------------------------------------------------------------------------
Please mark the post as an answer "Accept as solution" in case it helped resolve your query.
Give kudos in case a post in case it guided to the solution.
0 Kudos
Highlighted
Scholar
Scholar
3,799 Views
Registered: ‎06-05-2013

@muellera Can you try adding tcl  commands to set the board interface just before generate_ip?

 

Eg: 

 

set_property -dict [list CONFIG.ETHERNET_BOARD_INTERFACE {phy_sma} CONFIG.DIFFCLK_BOARD_INTERFACE {jitter_attn_clk} CONFIG.MDIO_BOARD_INTERFACE {mdio_mdc} CONFIG.ETHERNET_BOARD_INTERFACE {phy_sma} CONFIG.DIFFCLK_BOARD_INTERFACE {jitter_attn_clk} CONFIG.SupportLevel {Include_Shared_Logic_in_Core} CONFIG.Physical_Interface {Transceiver} CONFIG.MDIO_BOARD_INTERFACE {mdio_mdc} CONFIG.Ext_Management_Interface {true}] [get_bd_cells gig_ethernet_pcs_pma_0]

 

You can customize the IP as per your need and copy the tcl command from tcl console and try adding it in your script, this should work well

-Pratham

----------------------------------------------------------------------------------------------
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
Highlighted
Adventurer
Adventurer
3,784 Views
Registered: ‎02-22-2016

@pratham I am not using generate_ip. The IP cores are initially generated manually in a manage IP project. The .xci, .vho and .dcp files are then copied to our project source folder (one subfolder per IP) and added to the SVN repo. Before running synthesis the output products for each IP core are generated by calling "generate_target all [get_ips <ip_core_name>]".

 

0 Kudos