1. A method for pipeline parallelizing a control program for multi-core execution, comprising the steps of: using data dependency analysis on a control program to identify tasks that can be performed in parallel; identifying a largest task Tmax requiring the most execution time of the identified tasks; identifying cut-points in the largest task Tmax where data dependency delays decouple the task; inserting delayed data dependencies into cut-points of the largest task Tmax to create N pipeline sub-tasks, wherein N is a number of cores available to a processor on which the control program will be executed; and scheduling the tasks and pipeline sub-tasks to the available processor cores.