Покращення FPGA-компонентів критичних систем на основі природної версійної надмірності
DOI:
https://doi.org/10.15276/aait.02.2021.4Ключові слова:
Система критичного застосування, FPGA-компонент, LUT-орієнтована архітектура, функціональна безпека, відмовостійкість, контролепридатність, достовірність, кратні відмови, прихована несправність, природна версійна надмірність, версії програмного кодуАнотація
Статтю присвячено проблемі вдосконалення FPGA-компонентів, що розробляються для систем критичного застосу-
вання. FPGA-компоненти поліпшуються в контролепридатності їх схем і достовірності обчислюваних на них результатів
для підтримки відмовостійких рішень, які є базовими в забезпеченні функціональної безпеки критичних систем. Відмовос-
тійкі рішення потребують захисту від джерел кратних відмов, до яких відносяться приховані несправності. Вони можуть
накопичуватися в значній кількості на протязі тривалого нормального режиму і порушувати функціональність відмовостій-
ких схем з початком найбільш відповідального аварійного режиму. Захист від прихованих несправностей забезпечується
контролепридатністю схем, яка націлена на прояв несправностей і тому повинна підтримуватися в комплексі з достовірніс-
тю результатів, беручи до уваги зниження достовірності при прояві несправностей. Завдання підвищення контролепридат-
ності FPGA-компонента в нормальному режимі і достовірності результатів, що обчислюються в аварійному режимі, вирі-
шується шляхом використання природної версійної надмірності, властивої LUT-орієнтованій архітектурі. Ця надмірність
проявляється в існуванні множини версій програмного коду, що зберігають функціональність FPGA-компонента при одній і
тій же його апаратної реалізації. Контролепридатність FPGA-компонента і достовірність обчислюваних результатів розгля-
даються з урахуванням характерних несправностей LUT-орієнтованої архітектури. Ці несправності досліджені з позиції
несуперечності їх прояву і маскування відповідно в нормальному і аварійному режимі на версіях програмного коду. Не-
справності ототожнюються зі спотворенням бітів в пам'яті LUT вузлів. Біти, що спостерігаються тільки в аварійному режи-
мі, є потенційно небезпечними, оскільки можуть приховувати несправності в нормальному режимі. Переміщення потенцій-
но небезпечних бітів на контролепридатні позиції, які спостерігаються в нормальному режимі, виконується шляхом вибору
відповідних версій програмного коду і організації роботи FPGA-компонента на декількох версіях. Експерименти, що прове-
дені з FPGA-компонентом на прикладі матричного помножувача двійкових кодів, показали ефективність використання при-
родної версійнної надмірності LUT-орієнтованої архітектури для вирішення проблеми прихованих несправностей.