2 instances of a module

Qwerty112233

Member level 2
Joined
May 21, 2021
Messages
43
Helped
1
Reputation
2
Reaction score
3
Trophy points
8
Visit site
Activity points
368
In physically designing a floorplan and doing place and route - how do you deal with 2 instances of the same module?
Case A : same instance stamped twice into the floorplan?
Case B: both flat as sea of gates in the floorplan (not hierarchically implemented and stamped)

Q. What happens if there's an eco fix found in rtl through verification.
in case of A : we only need to apply the eco fix to the instance - then do PNR once - its stamped twice automatically..
Q. In case B : do we need to apply the patch to both rtl instantiations separately and re-synthesize and do pnr on both separately?

Case A sounds like the better choice?
 

I think you are asking about cloning. physical synthesis tools can do cloning for you, this is possible... but, to be honest, I never liked the way the tools handle this. I typically recommend to start from a netlist that has individual instances of everything that you want to have already in there with whatever unique names you pick.

The advantage of cloning is that you can have a module and treat it as a hard macro that is instantiated twice. This is the whole reason why the functionality is there in the first place.

Check the tool's documentation under hierarchical design and partitions. This is where you can learn more about how to execute cloning.

(There are also hacky ways using DEF files, placement solution files (.place), and perhaps other tricks. The idea being to fool the tool and use the same .DEF or .place for multiple portions of the design. Can be done with some external scripting)
 

Cookies are required to use this site. You must accept them to continue using the site. Learn more…