Так не работает.
Дело, например, в том, что помимо вашей программы, ПЛК выполняет обработку сети (ethernet, 485 и т.п.).
Если вы собрались занимать вообще всё процессорное время, то кто будет отвечать по сети?
Поэтому, цикл "1мс" существует специально для того, чтобы ПЛК мог выполнять свои задачи.
Например, пользовательская программа "вычислить 10 if'ов" занимает 0.1мс, а всё остальное время 0.9мс прошивка ПЛК использует для своих нужд (сеть экран вот это всё).
В общем "тут принято", без прерываний, и у всех работает (если правильно помню, то обрабатывают более 30 модулей, и цикл не превышает 2мс)