Building Demanding Hard Real-Time Systems with Software Thread Integration --------------------------------------------------------------------------- Abstract -------- Software thread integration (STI) is a compiler technique which statically interleaves instructions from functions of multiple threads into one while reconciling control- and data-flow conflicts. This gives generic microprocessors low- or no-penalty context switches, increasing concurrency and enabling hardware to software migration on much slower processors than previously possible. This talk describes new methods that enable STI to tackle much more challenging applications than previously possible. In particular, interrupt response times are cut dramatically, long functions can be integrated, and threads can now make asynchronous progress. We demonstrate how these new methods are used on a network protocol controller and a video display controller. The latter will be demonstrated with working hardware designed around a 20 MHz 8-bit microcontroller.