Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20641 Discussions

Design Flattening

Altera_Forum
Honored Contributor II
2,008 Views

Hi, 

 

What is the meaning of Design Flattening. 

How can i perform Flattening in Quartus 8.0. 

 

Will i get any change in timing when flattening is done in a design ? 

 

Please share your thoughts, 

 

regards, 

freak
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
531 Views

I don't think there is a universal definition. At one time many, many years ago, synthesis didn't do too much across hierarchies. By flattening, you essentially got rid of those hierarchical boundaries and could get better results. The downside is that you often lost the hierarchical naming, which made the final results harder to understand when debugging. As far as I know, all synthesis tools work nicely across boundaries and there really is no need to try and flatten a design.

0 Kudos
Altera_Forum
Honored Contributor II
531 Views

I agree with Rysc, now the definition of a flatten design is most suited when you'll do partitions or not in a design. 

A design with partition is not flatten, so if you start a qII design and don't define partition you're working with a flatten design.
0 Kudos
Altera_Forum
Honored Contributor II
531 Views

Design Flattening helps in optimization across hierarchical boundaries except that you lose clarity of the node namings in the netlist files across hierarchical boundaries, Which makes debugging difficult. 

 

Few synthesis tools offer various levels to set for preserving and flattening the hierarchies.
0 Kudos
Reply