Research Article
A Heuristic Scheduler for Port-Constrained Floating-Point Pipelines
Algorithm 1
Heuristic minimum-resource schedule.
| for  each port vertex    do |  |   = Port_Sched(); |  |   ; |  | end |  | while      do |  |   for  each operation vertex     do |  |    if  Prev_Sched (Pred,  )   then |  |      if  Conflict(E, RAT(), DII)   then |  |       e() = e() + 1; |  |      else |  |       e() = MAX (Pred,   ); |  |        UpdateRAT(); |  |       ; |  |       ; |  |      end |  |    end |  |   end |  | end |  | Conflict(E, RAT(), DII) |  |   for each functional unit r ∈R  do |  |   L = RAT(); |  |   while    do |  |    if   ≡ First() (mod DII)   then |  |     break; |  |   end |  |   L = Next(L); |  |  end |  |   if      then |  |   return   false; |  |  end |  |   end |  | return  true; |  
  |