Research Article
New Three-Level Resource Management Enhancing Quality of Offline Hardware Task Placement on FPGA
Algorithm 3
Branch and Bound for hardware task placement [
24].
: narural // the counter on branched nodes | b: natural // the number of branched nodes provided by the current node | Best , | Live = // the set of nodes to be processed | while Live do | Select the node N from Live to be processed which gives the best F by using DFS | Live = | if F(N) = F(X) for a feasible complete solution X and F (X) < Best F then | Best | Solution =X // A complete solution is founded | else if Best F then | Discard N from processing // partial candidate is rejected | else | // partial candidate is kept | Branch on N generating by respecting the problem constraints | for to do | Bound Nc: compute F(Nc) // bound calculation for the node Nc | Live = Live U | end for | end if | end while | Optimal Solution = Solution, Optimal Value = Best |
|