The Synplify software performs cross-boundary optimization by default, which causes the design to flatten to allow optimization. You can use the syn_hier attribute to override the default compiler settings. The syn_hier attribute applies a string value to modules, architectures, or both. Setting the value to hard maintains the boundaries of a module, architecture, or both, but allows constant propagation. Setting the value to locked prevents all cross-boundary optimizations. Use the locked setting with the partition setting to create separate design blocks and multiple output netlists.
By default, the Synplify software generates a hierarchical .vqm file. To flatten the file, set the syn_netlist_hierarchy attribute to 0.