Modularity vs. reusability

Roberto Lublinerman, Stavros Tripakis
2008 Proceedings of the conference on Design, automation and test in Europe - DATE '08  
We present several methods to generate modular code from synchronous hierarchical block diagrams. Modularity means code is generated for a given macro (i.e., composite) block independently from context, that is, without knowing where this block is to be used, and also with minimal knowledge about its sub-blocks. We achieve this by generating a set of interface functions for each block and a set of dependencies between these functions that is exported along with the interface. The main trade-off
more » ... is the degree of modularity (number of interface functions) vs. reusability (the set of diagrams that the block can be used in without creating dependency cycles). * We would like to thank Allen Goldberg, Yaron Kashai and Guang Yang from Cadence for motivating this work and providing valuable feedback. We also thank Paul Caspi from Verimag and Reinhard von Hanxleden from Kiel University for providing references to related work.
doi:10.1145/1403375.1403736 fatcat:2qqqxo2x6feixifmwjcw2xgxhq