+++ title = "Static Scheduling" author = "Yann Herklotz" tags = [] categories = [] backlinks = ["1c2g", "1c1", "1c", "1b9c"] forwardlinks = ["1c3", "1c2a"] zettelid = "1c2" +++ Scheduling is an important stage in high-level synthesis, as it is the main operation that parallelises the input behavioural description so that it can take advantage of spatial hardware. Static scheduling in particular performs analysis on the behavioural input to extract dependencies between constructs or instructions so that it can parallelise them as much as possible without changing the behaviour. This is contrary to dynamic scheduling, where no analysis is done, and tokens are used to automatically schedule all the instructions.