Do not generate a seperate module for the subsystem when Generating HDL code
3 views (last 30 days)
Show older comments
Kamyar Khosravi
on 11 Apr 2018
Commented: Kamyar Khosravi
on 13 Apr 2018
Hello,
Is it possible to not generate a separate module for subsystems used a lower level of the model when generating HDL code. For example, sometimes to make the design more readable, I want to create subsystems. But when generating the code, it creates a different module for that subsystem. Is it possible to not generate any module when using subsystem and just propagate signals as they go through subsystem? If not are there any other available blocks that would be able to achieve above?
Many thanks, Kamyar
0 Comments
Accepted Answer
Tim McBrayer
on 11 Apr 2018
Yes, this is a native capability of HDL Coder. Each subsystem has a HDL Block property named "FlattenHierarchy" that can be either 'on', 'off', or 'auto'. The default value is 'auto'. which means that each subsystem will inherit its FlattenHierarchy setting from its parent. To completely flatten your entire design into a single flat HDL file, set 'FlattenHierarchy' to 'on' on your top-level subsystem. A more targeted approach is also possible, where you can mark specific sub-hierarchies for flattening (or not flattening) as you desire.
To access this property, you can use the hdlset_param command, or you can use the right-click context menu on a subsystem. Choose HDL Code>HDL Block Properties...>Flatten Hierarchy.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!