Abstract
An important aspect of hardware-software co-design is partitioning of tasks to be scheduled on the hardware and software resources. Existing approaches separate partitioning and scheduling in two steps. Since partitioning solutions affect scheduling results and vice versa, the existing sequential approaches may lead to sub-optimal results. In this paper, we present an integrated hardware/software scheduling, partitioning and binding strategy. We use dynamic programming techiques to devise an optimal solution for partitioning of a given concurrent task graph which models the co-design problem, for execution on one software (single CPU) and several hardware resources (multiple FPGAs), with the objective of minimizing the total execution time. Our implementation shows that we can solve problem instances where the task graph has 40 nodes and 600 edges in less than a second.
Published Version
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have