[SOLVED] Why some modules don't appear in the Netlist after synthesis using Vivado 2019.1

Status
Not open for further replies.

MSAKARIM

Full Member level 3
Joined
Jun 2, 2015
Messages
154
Helped
1
Reputation
2
Reaction score
4
Trophy points
1,298
Activity points
2,528
In my code i have around 6 sub-modules, 2 of them(&their inputs and outputs) only appear in the Netlist. the other 4 modules don't appear completely, also utilizaion table in the project summary seems that it is affected by this. Although when i tried to see the RTL Schrmatic of the top module all sub-modules appear!!
the code seems to be okay has no errors.
 

Not clear what "don't appear completely" means. However logic that has no actual function because no design output depends on is discarded during synthesis.
 

    MSAKARIM

    Points: 2
    Helpful Answer Positive Rating
Not clear what "don't appear completely" means. However logic that has no actual function because no design output depends on is discarded during synthesis.
they has actual function,
i want to know, what are the reasons of disappearing some of sub-modules in the netlist?
 

What do you see if you trace an output of the respective module in the net list?
 

    MSAKARIM

    Points: 2
    Helpful Answer Positive Rating
Occasionally when the synthesis tool determines that an output is statically 0 or 1 and is connected to something in another level it will propagate the constant output value and remove all the logic driving that output. Have you verified that isn't the case?

If you are worried about it then run a functional netlist simulation using the same HDL functional simulation you used to verify the design. Depending on how well you simulated the HDL code that might prove or disprove that something important was removed.
 

    MSAKARIM

    Points: 2
    Helpful Answer Positive Rating
Look at KEEP_HIERARCHY
e.g. http://www.xilinx.com/support/answers/54778.html
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…