Structural Profiler
The MDC Structural Profiler analyzes all of the possible merging configuration, returning the best ones in terms of area, power consumption and operative frequency. For each of the different possible dataflow sequences, the MDC tool extracts the multi-dataflow graph as described in Baseline MDC Core. Then, for each possible merging configuration, the MDC Structural Profiler computes an implementation cost, based on back-annotation of the HDL components library with one value of estimated area and power consumption of each dataflow graph.
MDC, while merging the input specifications, search for all the different possible configurations associating to each of them an estimate in terms of area occupation, maximum operating frequency and power dissipation. These estimations, at the moment, are retrieved from an a priori synthesis of the separate isolated system. The optimal solution will be one that presents the best compromise between the considered metrics according to the given project constraints (minimization of area and power loss or maximization of the operating frequency).
The searching phase of the optimal solution is necessary because, different input sequences can lead to different chains of Sboxes in the merged specification, with consequent effects on the operating frequency of the system. Consequently, you might decide to merge only a subset of networks to improve the operating frequency of the final system (reducing the length of the critical path due to the Sbox modules) provided that you still comply with the area and power constraints (which may be adversely affected by a lower degree of resources sharing).
The phases of the DSE-based profiling associated to the tool MDC are schematized in the figure and described hereafter:
- Sequences generator: it generates all the sequences of the incoming dataflow networks that can determine a change in the resulting multi-dataflow network generated by MDC. In particular, these modifications can be determined varying the number of networks to be merged and their order.
- MDC merging process: for each sequence generated by the sequences generator this phase generates a different multi-dataflow network leveraging on the standard MDC flow.
- Profiling: each multi-dataflow network is characterized in terms of area occupied, power dissipation and maximum operating frequency.
- Pareto analysis: the distribution of the power area and frequency estimations, associated with each point of the design space, are analyzed through the graphs that compare, two at a time, the three estimated metrics. According to the constraints set by the user (minimization of occupied area and power loss or maximisation of the operating frequency) the optimal multi-dataflow network is identified.
At the end of this analysis, the high-level multi-functional optimal specification will be mapped in hardware adopting the MDC back-end.