да ничего бить не нужно если я правильно понял, то есть ядро которое работает с составной периферией(ацп, цап, дискретные входы). Периферия может меняться впроцессе работы. В рамках ртос решаем след образом. Есть отдельные задачи обслуживающие конкретный(ые) физический(ие) модуль, ацп например. АЦП может быть несколько. Поэтому задача работы с ацп определяет их количество опрашивает их и результаты складывает в базу данных по выделенному идентификатору(картинка в конце сообщения
http://caxapa.ru/181071.html). Причем результаты можно положить в кольцевую структуру и тогда количество каналов становится неограниченным. Задача управления(ядро) вычитывает из БД результаты работы задачи ацп. Можно реализовать и без БД на сообщениях РТОС от разных задач периферии.
Если нехватает скорости надо поднять частоту :-) или сменить проц :-)